2012-09-02 65 views
0

我是python的新手,通過編寫基於文本的冒險遊戲來練習。我有很多類型的糖果,一個字長,兩個字或更多。我有一個函數,可以識別用戶是否輸入一個單詞糖果,但它不能識別兩個單詞糖果,因爲輸入被分成兩個單詞。有沒有辦法識別單詞對?我在想,我可以將我的列表分成所有的單詞,然後識別每個單詞並將它們掛起來,我不知道該怎麼做,或者如果有更好的選擇?如何在python中識別raw_input中的單詞對

這是我的功能,用於識別raw_input並根據糖果列表進行檢查。提示不是「你想買什麼樣的糖果?」它是「你在糖果店,現在做點什麼」,所以我期望輸入變得複雜。

action=raw_input(">") 
results=list(action.rsplit())  
inter2 = set(results).intersection(candy_list) 
if len(inter2)>0: 
    inter_2=list(inter2) 
    for x in inter_2: 
     inventory.append(x) 

回答

0

你真的需要使用一組結構?

也許你應該使用清單:

candy_list = [...] # your predefined list 
inventory = [...] # the inventory 
results = raw_input(">") 
if results in candy_list: 
    inventory.append(results) 
+0

對不起,我錯碼在那裏。提示不是「你想買什麼?」它是「你在糖果店,做些什麼」所以投入會比這更復雜 –