输入函数仅接受整数作为输入,否则在python 3中使用REPL运行时会收到此错误消息。
Entry:
b
Traceback (most recent call last):
File "Ex7.5.py", line 1, in <module>
a = input("Entry:\n")
File "<string>", line 1, in <module>
NameError: name 'b' is not defined
需要我的代码接受字母和数字作为输入,并且无法理解为什么不将b作为字符串并打印吗?
从字面上看,只是试图使此打印输入功能当前可以使用,然后再在其他功能中使用。
如果我只用整数运行相同的代码,那就没问题了。
a = input("Entry:\n")
print(a)
print(type(a))
我期望的答案是b。
答案 0 :(得分:1)
发生此错误是因为您正在Python 2中而不是Python 3中运行代码。Python2中的input()
将评估您提供的内容,在这种情况下为变量名,该变量名不存在;而Python 3中的input()
会将其保留为字符串。有关更多详细信息,请参见What's the difference between raw_input() and input() in python3.x?
如何使用正确的Python版本是另一个问题,但是到目前为止,您似乎在注释方面取得了一些进展。