繁体   English   中英

Python:为什么数字应该在if语句中为字符串?

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM