-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

これは、最初に変数doorを として宣言したintが、それを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 に答える