エラー: Python でユーザー入力を処理中に「NameError: name 'name' が定義されていません」
Python でユーザー入力を処理するとき、使用している Python のバージョンに応じて、正しい方法を使用することが重要です。この特定の質問では、Python 2.x での input() の使用が原因で問題が発生します。
問題を理解する
Python 2.x では、 input() 関数は、入力された入力を Python コードとして評価するため、予期しない結果が生じる可能性があります。提供されたコードでは、ユーザーの入力が変数 UserName に割り当てられます。ただし、メッセージ「Hello Mr. UserName」を出力するとき、インタープリタはユーザーの入力を有効な変数名として評価しようとします。
解決策
これを回避するにはPython 2.x の問題では、input() の代わりに raw_input() 関数を使用してください。 raw_input() 関数は、ユーザーの入力を Python コードとして評価せずに文字列として読み取ります。正しいコードは次のようになります。
UserName = raw_input("Please enter your name: ") print("Hello Mr. " + UserName) raw_input("<Press Enter to quit.>")
Python 3.x での使用法
Python 3.x では、input() は raw_input() と同様に動作します。 Python 2.x では、デフォルトでユーザーの入力を文字列として評価します。したがって、Python 3.x では、質問で提供されたコードは何も変更せずに機能します。
以上がPython でユーザー入力を処理する際に「NameError: name 'name' が定義されていません」というメッセージが表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。