ホームページ > バックエンド開発 > Python チュートリアル > Python で編集機能を使用してユーザー入力のデフォルト値を提供する方法

Python で編集機能を使用してユーザー入力のデフォルト値を提供する方法

DDD
リリース: 2024-10-27 05:33:03
オリジナル
915 人が閲覧しました

How to Provide Default Values for User Input with Editing Capabilities in Python?

Python でのデフォルト値を使用した入力の編集

input() 関数でユーザー入力を受け入れる場合、デフォルト値を提供することが望ましいことがよくあります。これはプレースホルダーまたは開始点として機能します。この場合、ユーザーはデフォルト値「Download」でフォルダー名の入力を受け入れますが、文字を追加または削除するだけで簡単に編集できるようにしたいと考えています。

標準の input() と raw_input( ) 関数は、そのままではこの動作をサポートしません。ただし、Linux システムでは、readline モジュールが解決策を提供します。

Readline の使用

readline モジュールは、高度な行編集機能を提供します。 readline を利用するカスタム入力関数を定義することで、目的の動作を実現できます。以下に例を示します。

<code class="python">import readline

def rlinput(prompt, prefill=''):
   readline.set_startup_hook(lambda: readline.insert_text(prefill))
   try:
      return input(prompt)  # or raw_input in Python 2
   finally:
      readline.set_startup_hook()</code>
ログイン後にコピー

この関数内:

  • rlinput(prompt, prefill) は、プロンプトとオプションのプレフィル値を受け取ります。
  • readline.set_startup_hookプロンプトにプレフィル値を挿入する起動フックを設定します。
  • input または raw_input は、ユーザー入力を受け入れるために使用され、プレフィルの編集を可能にします。
  • finally ブロックは、起動フックをその設定にリセットします。デフォルトの動作。

使用法

この関数を使用するには、標準の input() 呼び出しを rlinput() 関数に置き換えるだけです。

<code class="python">folder = rlinput('Folder name: ', 'Download')</code>
ログイン後にコピー

これにより、プロンプト「フォルダー名: ダウンロード」と事前入力されたテキスト「ダウンロード」が表示されます。ユーザーが何も変更せずに Enter キーを押すと、デフォルト値が「ダウンロード」として保存されます。ユーザーがデフォルトを編集したい場合は、事前に入力されたテキストに上書きまたは文字を追加するだけです。

以上がPython で編集機能を使用してユーザー入力のデフォルト値を提供する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート