求助递归
为什么这样不行 为什么思路相同,这题就可以 #递归第一个例子正确,同样的思路第二个例子就错误。“+”左右两边数据类型相同,Dec2Bin(n//2)被看作字符串。为什么get_digits(num//)就是"NoneType"。 本帖最后由 jackz007 于 2019-10-13 11:49 编辑
get_digits(n // 10) . append(n % 10)这个表达式没有返回值,所以,其类型是NoneType,不能直接 return,拆开成两句来写就可以了。
def get_digits(n):
result = []
if n:
result = get_digits(n // 10)
result . append(n % 10)
return result
print get_digits(12345) 应该这样改:
def get_digits(num):
if num >= 10:
l = get_digits(num // 10)
l.append(num % 10)
return l
else:
return jackz007 发表于 2019-10-13 11:43
get_digits(n // 10) . append(n % 10)这个表达式没有返回值,所以,其类型是NoneType,不能直 ...
嗯嗯,明白了
页:
[1]