[英]Python: why the number should be string in if-statement?
我是Python的新手,我正在阅读一些有关它的示例。 但是,下面的一个例子
print "You enter a dark room with two doors. Do you go through door #1 or door #2?"
door = raw_input("> ")
if door == "1":
print "There's a giant bear here eating a cheese cake. What do you do?"
print "1. Take the cake."
print "2. Scream at the bear."
bear = raw_input("> ")
if bear == "1":
print "The bear eats your face off. Good job!"
elif bear == "2":
print "The bear eats your legs off. Good job!"
else:
print "Well, doing %s is probably better. Bear runs away." % bear
elif door == "2":
print "You stare into the endless abyss at Cthulhu's retina."
print "1. Blueberries."
print "2. Yellow jacket clothespins."
print "3. Understanding revolvers yelling melodies."
insanity = raw_input("> ")
if insanity == "1" or insanity == "2":
print "Your body survives powered by a mind of jello. Good job!"
else:
print "The insanity rots your eyes into a pool of muck. Good job!"
else:
print "You stumble around and fall on a knife and die. Good job!"
我很好奇为什么if door == "1":
这是双引号,而不是第一。 我试图删除双引号,程序将打印"You stumble around and fall on a knife and die. Good job!"
如果输入为一。
函数raw_input()
“从输入中读取一行,将其转换为字符串(将尾随换行符分隔),然后返回”。 在功能上的文档在这里 。
因此,您的条件语句将检查raw_input()
返回的值始终是字符串。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.