ホームページ >バックエンド開発 >Python チュートリアル >入力関数での改行挿入を抑制するにはどうすればよいですか?

入力関数での改行挿入を抑制するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-10-27 10:04:02298ブラウズ

How Can I Suppress the Newline Insertion in Input Functions?

入力関数での改行挿入の克服

課題: 入力関数 (raw_input や input など) の後に自動的に追加される改行を抑制します。

目的: ユーザー入力後に新しい行が作成されないように raw_input (Python 3.x の input に相当) を変更します。

解決策:

raw_input での改行挿入を完全に排除することはできませんが、賢明な回避策が存在します。カーソル移動コマンドを使用すると、基本的にカーソルを入力プロンプトと同じ行に「巻き戻す」ことができます。

これを実現するには、次のコマンドを使用できます。

print('3[{}C3[1A'.format(len(x) + y))

ここで:

  • x はユーザー入力の長さです。
  • y は raw_input プロンプトの長さです。

説明:

シーケンス 33[{}C により、カーソルが特定の数のスペースだけ右に移動します ({} は整数値を表します)。この場合、ユーザー入力の最後に移動して、事実上消去します。

シーケンス 33[1A は、カーソルを 1 行上に移動し、プロンプトの位置に戻します。

注: この方法はすべての端末で機能するとは限りません。ただし、互換性のある端末 (Kubuntu 14.04 など) では、raw_input または input の後の不要な改行挿入を抑制する便利なソリューションが提供されます。

以上が入力関数での改行挿入を抑制するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。