-1

我目前正在用 Python 制作游戏。它只是命令。

假设游戏中有一扇带锁的门,你需要钥匙才能开门。我可以了解所有关于变量的基本知识,但显然不是这个。

我的代码如下所示:

def room_1():
    door = 0
    print
    choice = raw_input('>: ')

    if choice.lower() == 'open door':
        if door == '0':
            print
            print 'Sorry, you need a key to open this door.'
            room_1()
        if door == '1':
            room_2()

我不太确定为什么这不起作用。

有人可以帮我吗?非常感谢!

4

2 回答 2

4

那是因为您最初将变量声明doorint,但您将其与string '0'(and '1') 进行比较。

它应该是,

if door == 0:
   .....

if door == 1:
   .....
于 2013-08-13T18:26:06.380 回答
0

你没有在 raw_input 函数调用中打开你的字符串:

def room_1():
    door = 0
    print
    choice = raw_input('>: ')

    if choice.lower() == 'open door':
        if door == '0':
            print
            print 'Sorry, you need a key to open this door.'
            def room_1()
        if door == '1':
            room_2()
于 2013-08-13T18:23:39.117 回答