所以我正在从java背景学习python,因为我的新工作,我遇到了以下错误。
我尝试在终端上运行此模块(使用mac),然后通过IDLE运行。一切都徒劳无功。
userName = input("What is your name?: ")
lengthName = str(len(usernName))
yourName = "\nYour name is " + userName + " and is " + legnthName + " letters long."
print(yourName)
input("\nPress enter to exit")
当在终端中执行此操作并输入第一个输入时:“John”我得到了这个结果:
File "[...]", line 1, in <module>
userName = input("What is your name?: ")
File "<string>", line 1, in <module>
NameError: name 'John' is not defined
同样,当通过IDLE执行时:
Traceback (most recent call last):
File "/Users/zachmartin/Desktop/python fails/lol.py", line 2, in <module>
lengthName = str(len(usernName))
NameError: name 'usernName' is not defined
这里发生了什么?
答案 0 :(得分:4)
两个问题:
您应该使用raw_input()
而不是input()
(因为input()
会将您输入的内容视为Python代码,并尝试对其进行评估。)
您有一个错字,userName
与usernName
(请注意额外的n
)。 (后来也legnthName
。)