رفع خطای input() error - NameError: name 'x' is not defined در پایتون

mohsen1 سال قبل
ارسال شده در
mohsen

در پایتون می خواهیم از کاربر یک ورودی دریافت کنیم (برای مثال نام کاربر) و آن را در برنامه استفاده کنیم (برای مثال نام وارد شده را چاپ کنیم) برای این کار از تابع input استفاده کرده ایم:

      input_variable = input("Enter your name: ")
print("your name is" + input_variable)
    

اما با اجرای برنامه و وارد کردن mohsen بعنوان وردی خطای نمایش داده شده:

      NameError: name 'mohsen' is not defined
    

راه حل: در پایتون 2 تابع input، ورودی کاربر را evaluate می کند. به این معنی که آن را بعنوان یک عبارت در نظر می گیرد و سعی در پیدا کردن مقدار این عبارت می کند. برای روشن شدن روش کار تابع input، در مثال کد بالا را به صورت زیر تغییر می دهیم:

      mohsen = "MOHSEN"
input_variable = input("Enter your name: ")
print("your name is " + input_variable)
    

با اجرای کد و وارد کردن mohsen بعنوان نام، دیگر با خطا مواجه نمی شویم و خروجی زیر را مشاهده می کنیم:

      your name is MOHSEN
    

برای رفع مشکل باید از تابع raw_input به جای input استفاده کنیم. 

نکته: در پایتون 3 تابع input همان تابع raw_input است.

رای
0
ارسال نظر
مرتب سازی:
اولین نفری باشید که نظر می دهید!