ユーザーに有限リストから入力を選択させるにはどうすればよいでしょうか? 質問する

ユーザーに有限リストから入力を選択させるにはどうすればよいでしょうか? 質問する

Python で if ループを使用せずに複数の選択肢から選択を求めることは可能ですか?

例:

print "Do you want to enter the door"
raw_input ("Yes or not")

ユーザーは選択肢の中から選ぶことしかできません。

ベストアンサー1

これを定期的に行う必要がある場合は、ユーザー エクスペリエンスを簡単に向上させるのに役立つ便利なライブラリがあります。質問者

免責事項: 私の知る限り、何らかのハックを行わないと Windows では動作しません。

pip を使って inquirer をインストールできます:

pip install inquirer

例 1: 複数の選択肢

Inquirer の機能の 1 つは、ユーザーが回答を入力する必要がなく、キーボードの矢印キーを使用してリストから選択できるようにすることです。この方法により、コンソール アプリケーションの UX を向上させることができます。

以下は、ドキュメンテーション:

import inquirer
questions = [
  inquirer.List('size',
                message="What size do you need?",
                choices=['Jumbo', 'Large', 'Standard', 'Medium', 'Small', 'Micro'],
            ),
]
answers = inquirer.prompt(questions)
print answers["size"]

問い合わせの例

例2: はい/いいえの質問:

あなたのような「はい/いいえ」の質問の場合、問い合わせ者の確認を使用することもできます。

import inquirer
confirm = {
    inquirer.Confirm('confirmed',
                     message="Do you want to enter the door ?" ,
                     default=True),
}
confirmation = inquirer.prompt(confirm)
print confirmation["confirmed"]

はい、いいえ、質問者への質問

その他の便利なリンク:

Inquirer の Github リポジトリ

おすすめ記事