Python:多选问题代码

时间:2013-03-11 21:05:48

标签: python variables input

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的新手很抱歉,如果这很明显,但我找不到通过指南查找的解决方案。

3 个答案:

答案 0 :(得分: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将尝试评估用户在命令行中传递的内容并将其分配给指定的变量。

答案 1 :(得分:1)

在Python 2中,您需要使用

level=raw_input()

答案 2 :(得分:0)

它出现在你提供代码的第二行:input = level 你在说“让输入等于水平”

它应该是:

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

因此您将变量level设置为等于用户的input