Rumah > Artikel > pembangunan bahagian belakang > Mengapa saya mendapat "NameError: nama 'x' tidak ditakrifkan" selepas mendapat input pengguna dalam Python?
Pengendalian Ralat: Menyelesaikan 'NameError' selepas Input Pengguna dalam Python
Apabila cuba mendapatkan semula input pengguna dalam Python, ramai pemula menghadapi ralat "NameError: nama 'x' tidak ditakrifkan" yang ditakuti. Isu ini timbul apabila pembolehubah yang dimasukkan pengguna, seperti 'x', tidak diiktiraf sebagai pembolehubah yang sah dalam kod Python.
Satu tanggapan salah yang biasa ialah input() harus digunakan untuk tujuan ini. Walau bagaimanapun, dalam Python 2.x, input() ialah fungsi yang menilai hujahnya dan melaksanakannya sebagai kod Python. Ini bermakna jika anda memasukkan rentetan seperti "Hello", ia akan cuba mentafsirkannya sebagai pernyataan Python, yang bukan yang anda maksudkan.
Untuk membetulkannya, anda harus menggunakan raw_input() sebaliknya, iaitu direka khusus untuk mendapatkan input pengguna dalam Python 2.x. raw_input() hanya mengembalikan rentetan yang dimasukkan, tanpa sebarang penilaian.
Kod Dibetulkan
UserName = raw_input("Please enter your name: ") print("Hello Mr. " + UserName) raw_input("<Press Enter to quit.>")
Dengan pengubahsuaian ini, kod akan beroperasi dengan sempurna dalam Python 2.x , dan anda tidak akan menghadapi pengecualian 'NameError' lagi apabila menggunakan input pengguna.
Atas ialah kandungan terperinci Mengapa saya mendapat "NameError: nama 'x' tidak ditakrifkan" selepas mendapat input pengguna dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!