2011-08-23 86 views
0

我正在Python中製作一個老虎機程序,並且由於某種原因,隨機選擇器想要合併已知的兩個元素。Python:從列表中隨機產生的項目只有兩個

itmlist = random.choice(['banana', 'cherry', 'bar', 'seven', 'banana', 'cherry' 'banana', 'cherry', 'seven']) 
    print itmlist 

它每隔一段時間顯示爲「cherrybanana」,我真的很困惑。

+5

對代碼的維護者很可惜,並創建列表爲'['banana'] * 3 + ['cherry'] * 3 + ['seven' ] * 2 + ['bar']' – Kimvais

回答

11

您錯過了列表末尾附近的「櫻桃」和「香蕉」之間的逗號。

的Python串聯串,使其成爲 'cherrybanana'

itmlist = random.choice([ '香蕉', '櫻桃', '酒吧', '7', '香蕉','櫻桃''香蕉','櫻桃','七'])

+0

@Kimvais的建議可以很好地避免這個問題。你也可以通過單獨存儲列表來診斷它(如果你正在做我認爲你正在做的事,你可能需要在幾個不同的地方列出相同的列表)並打印它以驗證其內容。 –