我正在製作基於文本的RPG,但我在輸入時遇到了問題。我很難製作一個函數,它應該用一個關鍵字和一個項目來分隔兩個參數(例如:使用item,take item ...),但是由於某種原因,它會一直重複同樣的結果並結束。如何使這段代碼合併函數,while和while循環運行良好?
我的代碼:
def console(input):
x = 0
y = 0
z = 0
argument1 = ""
argument2 = ""
for x in input:
if input != " " and y != 1:
argument1 += input
elif y != 1:
y = 1
else:
argument2 += input
print argument1
print argument2
console("use item")
當我運行代碼,我得到的輸出是這樣的:使用itemuse itemuse itemuse itemuse itemuse itemuse itemuse項目
我不知道爲什麼 '使用' 和「項目'是在同一條線上,以及爲什麼它總共重複八次。
不是鏈接到代碼,請將其粘貼到此處,並通過點擊「{}」按鈕進行正確格式化。 – 2012-03-22 15:23:29
@ g.d.d.c投票批准編輯。 – agf 2012-03-22 15:34:33
我注意到你正在初始化變量'x'。這樣做絕對沒有理由。我假設你沒有意識到x被分配了(命名不清的)'input'中的連續字符串值。在python中,for循環的工作方式與c/C++/java中循環的工作方式不同。如果_want_ x被分配數值,我會爲'範圍內的x(len(輸入)):' – 2012-03-22 16:24:22