0
print "Do you want to be (A) begginner, (B) interidate or (Other) advanced?"
input = level
if level == "A":
    ...
elif level == "B":
    ...
else :
    ...

这出现了这个错误:

Traceback (most recent call last):
  File "C:/Users/*****/Maths.py", line 4, in <module>
    input = level
NameError: name 'level' is not defined

如果这很明显,我是 python 新手,很抱歉,但我无法通过指南找到解决方案。

4

3 回答 3

2

您应该按以下方式使用 raw_input:

level = raw_input("Do you want to be (A) begginner, (B) intermediate or (Other) advanced? ")
if level == "A":
    print "A"
elif level == "B":
    print "B"
else :
    print "default"

raw_input将返回一个字符串,而input将尝试评估用户在命令行中传递的任何内容并将其分配给指定的变量。

于 2013-03-11T21:10:43.737 回答
1

在 Python 2 中,您需要使用

level=raw_input()
于 2013-03-11T21:09:28.280 回答
0

它出现在您提供的代码的第二行:input = level 您所说的“使输入等于级别”

它应该是:

level = input("Do you want to be (A) begginner, (B) interidate or (Other) advanced?")
...

因此,您将变量设置level为等于input来自用户的任何内容。

于 2013-03-11T21:14:21.190 回答