我正在做一個快速zork遊戲,但我遇到了這個問題,使用「或」運算符。我認爲這很簡單,但我不明白爲什麼這不起作用。現在,如果你輸入「n」,你應該得到「這個工程」,因爲它等於字符串「n」。相反,它打印出「它的作品」和「這個作品」,所以很明顯我用「或」錯誤。或運算符混淆python
x=0
while x<20:
response = input("HI")
if response!= 'n':
print("it works")
if response == 'n':
print("this works")
x+=1
使用前或它的工作原理
x=0
while x<20:
response = input("HI")
if (response!= 'n') or (response != 's'):
print("it works")
if (response == 'n') or (response == 's'):
print("this works")
x+=1
使用後或打印出來兩者。這可能是一些明顯-.-
作爲一個側面說明,對於魔域風格的文字冒險遊戲,每個房間的功能(我只是假設在這裏,但是這就是大多數新手做...),其中每一個都是一串長長的'if' /'elif'這樣的語句,很快就會變得笨拙。您可能需要考慮從其餘代碼中分析解析器,並使用真正的解析庫,並將房間轉換爲數據而不是代碼等等。首先以[Inform](http://inform7.com)的形式構建一個冒險,看看它是多麼容易,然後試圖找出如何使它在Python中變得簡單,也許會有所幫助。 – abarnert