誰かがこのコードをチェックして、何が問題なのかを教えてもらえますか?
input_list = ["One", "Two", "Three"]
P1 = input("Select the input: ", input_list[0], input_list[1], input_list[2])
print (P1)
Pythonのraw_input
では、事前に選択されたリストをユーザーが選択できるようにすることはできません。 raw_input
では、生の文字列を収集します。
update:いい解決策は、新しいpickライブラリを使用することです https://github.com/wong2/pick It与えられたリストから選択するための小さなcursesインターフェースを提供します。 pip install pick
で入手してください。 (更新:複数選択:はい)
update 2:さらに別のpython lib! https://curses-menu.readthedocs。 org/en/latest/usage.html#getting-a-selection (複数選択なし)
そのために作られた、小さくてメンテナンスされていないライブラリがあります picker (複数選択:はい)。
私が考えている最も簡単な解決策は、シェルツールを使用することです。
dialog
は、コンソールにUIを表示するためにDebianのようなディストリビューションが使用するものです。zenity(および yad-dialog )を使用すると、単純なウィンドウを簡単に作成できます(ターミナルを終了します)。これでリストを表示できます:
zenity --list --text="a title" --column="first column" "first choice" "second choice"
複数の選択肢を選択することもできます。
input
関数のドキュメントをご覧ください: https://docs.python.org/2/library/functions.html#input
input
はプロンプトを表示し、ユーザーが入力したデータをPython式であるかのように評価します。ユーザーが入力したデータを収集するだけの場合は、raw_input
代わりに、カスタムロジックを実装して、ユーザーの入力がリスト内の何かと一致することを確認する必要があります。