Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python“NameError:名称“”未定义”python 2.7.12时出错_Python - Fatal编程技术网

python“NameError:名称“”未定义”python 2.7.12时出错

python“NameError:名称“”未定义”python 2.7.12时出错,python,Python,使用python 2.7.12 im使用一个简单的程序: import time print('Whats Your Name?') name=input() print('Happy Birthday to You') time.sleep(1.5) print('Happy Birthday to You') time.sleep(1.8) print('Happy Birthday Dear '+name) time.sleep(2) print('Happy Birthday to Yo

使用python 2.7.12 im使用一个简单的程序:

import time
print('Whats Your Name?')
name=input()
print('Happy Birthday to You')
time.sleep(1.5)
print('Happy Birthday to You')
time.sleep(1.8)
print('Happy Birthday Dear '+name)
time.sleep(2)
print('Happy Birthday to You')
time.sleep(1.5)
但是,当我尝试输入名称时,我得到以下结果:

你叫什么名字? 杰夫

为什么??这似乎发生在每个需要输入的程序上。

返回字符串的更改


在Python2.x上,尝试计算其输入,同时返回一个字符串。在Python3上替换

如果要将用户键入的字符串传递到名称中,则应使用原始输入而不是输入。

在使用Python2.x时,需要使用原始输入而不是输入

在Python2.x中,input将尝试并计算您的输入,而raw_input将返回一个您可以使用的字符串

希望这有帮助

原始输入和输入之间的差异:

在Python2.x中: 输入正在查找表达式

如果输入值为1+1,它将对其求值并返回2。 杰夫不是一个表达式,它会抛出一个错误。 如果输入为jeff或“jeff”,则输入将返回相同的字符串

原始输入正在查找字符串

如果给原始输入1+1,它将返回1+1字符串。 如果您将jeff交给原始输入,它将返回jeff

在Python3.x中:
原始输入被重命名为输入,原始输入被删除。

既然您是新来者,我强烈建议您现在放弃Python 2,改用Python 3。@AnttiHaapala为什么?
Traceback (most recent call last):
  File "E:\Python\happybirthday.py", line 3, in <module>
    name=input()
  File "<string>", line 1, in <module>
NameError: name 'Jeff' is not defined