我對python相當陌生,並且明白遞歸是一個重要的概念。我一直在涉足各種腳本以運用我的知識,並且提出了以下腳本來模擬彩票抽獎,您只需從49個數字中抽出6個數字,並與另外6個數字進行比較,看看您是否贏了。儘管使用遞歸函數取得了另一個函數的值,但我仍在掙扎。用遞歸函數掙扎,我做錯了什麼
我敢肯定,這將是直截了當的,但無法自己摸索。
這裏是到目前爲止我的代碼:
from random import randint
def drawSix():
six = []
while len(six) < 6:
a = randint(1,49)
if a not in six:
six.append(a)
return sorted(six)
def lottery(draw,ticket):
if draw == ticket:
return 'win'
return lottery(drawSix(),drawSix())
我調用函數與彩票(drawSix(),drawSix())
,並得到遞歸以下。
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
lottery(drawSix(),drawSix())
File "/Users/johnhopkins/Desktop/lottery.py", line 14, in lottery
return lottery(drawSix(),drawSix())
究竟是什麼問題? – thefourtheye
我不斷收到遞歸錯誤請參閱原始帖子中的編輯 – Hoppo
@hivert查看最後一行.... –