コンピュータープログラミングクラスのpygameに関する課題を完了しようとしています。私はこのようなことにあまり精通していないので、質問をするときに間違いを犯した場合はすみません。
ユーザーがウィンドウ内でブロックのグループが移動する速度と、位置の更新間の遅延を設定できるようにすることを目的として、教科書のソースコードを変更しようとしています。プログラムの最初にはwhileループがあり、ユーザーが事前に定義された設定を選択したり、独自の設定を作成したりできるように設計されています。
choice = ""
while choice != "E" or "e" or "Elect" or "elect" or "ELECT" or "C" or "c" or "Create" or "create" or "CREATE" :
choice = input("Would you like to elect a speed setting for the vectors, or create your own? (Type 'E' for elect or 'C' for create) ")
シェルでプログラムを実行しようとすると、「e」と入力すると、whileループの入力ステートメントが再び表示されました。「choice」が入力に設定されていないのはなぜですか?
試してみてください:
choice = ""
while choice.lower() not in ("e", "elect", "c", "create"):
choice = input("Would you like to elect a speed setting for the vectors,, create your own? (Type 'E' for elect, 'C' for create) ")
なぜ
あなたが持っている問題はchoice != "E" or "e" or ...
手段(choice != "E") or ("e") or (...)
です。そして、"e"
と評価されTrue
、それ以来ではないNone
、0
、False
、または空のシーケンス。したがって、条件は常に真です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加