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