我的python代码出现问题,一直在寻求帮助。我听说过有关这个网站的不一样的东西,但我没有其他地方可以转向所以我希望有人在这里可以向我展示亮点,看看他们是否能找出我的代码有什么问题(除此之外它是凌乱和低效的)。这是
D=False
while D==False:
input=raw_input("please type 1 for 10p, 2 for 20p, 3 for 50p, 4 for 1 pound")
while input not in ['1', '2', '3', '4']:
print "That is not a correct coin value"
input = raw_input("input: ")
else:
if input=="1":
m=m+10
if input=="2":
m=m+20
if input=="3":
m=m+50
if input=="4":
m=m+100
print("your current credit in pennys is:")
print(m)
D2=raw_input("are you done")
if D2=="yes" or "Yes":
D=True
else:
D=False
我在这里搞砸了代码的植入,但你得到了图片。一切正常,直到你问到你是否完成了。出于某种原因,即使你没有放好也会继续。任何好的编码员都能告诉我它是什么吗
答案 0 :(得分:0)
此
if D2=="yes" or "Yes":
始终评估为true,因为它基本上是这样解析的:
if (D2=="yes") or "Yes":
你可能想要:
if D2 == "yes" or D2 == "Yes":
哪个写得更好:
if D2.lower() == "yes":
或者:
if D2 in ["yes", "Yes"]: