到目前为止,这是我的所有代码。如果我手动输入x,该功能是有效的。我也刚刚开始,所以关于如何通常使它更加pythonic的任何一般信息将是apreciated
def iseven(x):
if x % 2 == 0:
return x," is even"
else:
return x," is odd"
it = (1)
while it >= 0:
number = input("What number: ")
print iseven(number)
new_num = input("another number? answer (Y/N):")
if new_num == "Y":
it += 1
else:
it = 0
这是错误 NameError:name' Y'未定义
答案 0 :(得分:0)
只需更改一行:
<% %>
为:
new_num = input("another number? answer (Y/N):")
您还需要将new_num = raw_input("another number? answer (Y/N):")
更改为while it >= 0:
,以便在提示时选择while it:
即可退出循环。
答案 1 :(得分:0)
在处理常规输入并且更喜欢input
的情况下,您可能希望避免使用raw_input
:
https://docs.python.org/2/library/functions.html#raw_input
这可以避免发生导致错误的eval
- 它正在程序的范围内查找名为“Y”的内容。如果你键入“它”,例如,它会评估代码,这通常是不安全的(虽然我认为这里相当温和)。