Python 输入命令有问题
嗨,我是一名学生,也是python的真正初学者。我的任务是写一个程序来打印你输入的血型。我的代码是Python 输入命令有问题,python,Python,嗨,我是一名学生,也是python的真正初学者。我的任务是写一个程序来打印你输入的血型。我的代码是 x=input("Enter your blood type: ") if x == O: for y in range(6): print("O O O O O O") elif x == A: for y in range(6): print("A A A A A A") elif x == B: for y in range(6):
x=input("Enter your blood type: ")
if x == O:
for y in range(6):
print("O O O O O O")
elif x == A:
for y in range(6):
print("A A A A A A")
elif x == B:
for y in range(6):
print("B B B B B B")
elif x == AB:
for y in range(3):
print("AB AB AB")
else:
print("N/A blood type! Are you alien?")
像这样。每当我编译它时
Traceback (most recent call last):
File "C:\Users\muziek\Desktop\q1.py", line 2, in <module>
if x == O:
NameError: name 'O' is not defined
回溯(最近一次呼叫最后一次):
文件“C:\Users\muziek\Desktop\q1.py”,第2行,在
如果x==O:
NameError:未定义名称“O”
请帮助?在您的代码中,您试图将变量
x
与任何数量的其他变量进行比较,O
,a
,AB
,B
。最后四个都没有定义,因此您总是会得到一个namererror
您可能是指
x=='O':
,等等。对于Python中的字符串,需要在其周围加引号。现在Python认为O
等都是变量。
固定的:
首先,您应该使用
原始输入
而不是输入
您需要将O
置于引号中,使其成为字符串
进行以下更改:
x = raw_input("Enter your blood type: ")
if x == "O":
for y in range(6):
print("O O O O O O")
elif x == "A":
for y in range(6):
print("A A A A A A")
elif x == "B":
for y in range(6):
print("B B B B B B")
elif x == "AB":
for y in range(3):
print("AB AB AB")
else:
print("N/A blood type! Are you alien?")
O
当前被视为一个名称,错误消息告诉您。我假设你希望它是一根线。阅读有关字符串的内容。
x = raw_input("Enter your blood type: ")
if x == "O":
for y in range(6):
print("O O O O O O")
elif x == "A":
for y in range(6):
print("A A A A A A")
elif x == "B":
for y in range(6):
print("B B B B B B")
elif x == "AB":
for y in range(3):
print("AB AB AB")
else:
print("N/A blood type! Are you alien?")