0
我正在運行一個遞歸函數,它接受一個正整數和一個列表(它更新,因爲它運行通過函數):無效文字爲int()與基地10:''爲地圖(int,str(num))
def happy_number(num, tracking_list = []):
if (num == 1):
print 1
else:
digit_list = map(int, str(num))
digit_sum = 0
for n in digit_list:
digit_sum = (n ** 2) + digit_sum
if digit_sum in tracking_list:
print 0
else:
tracking_list.append(digit_sum)
happy_number(digit_sum, tracking_list)
運行此,它抱怨:
digit_list = map(int, str(num))
它給人的錯誤:
ValueError: invalid literal for int() with base 10: ''
發生了什麼事,他回覆?
你給了什麼輸入? –
@AmiTavory顯然他正在喂一個空的字符串作爲數字 – RPGillespie
代碼顯示正常,你給你的輸入num =「」。 – rlbond