我正在创建一个程序来计算数字列表中的最高小数位数。基本上,一个列表[123, 1233]
将返回 4,因为 1233 中有四个数字,它是最大的。另一个例子是[12, 4333, 5, 555555]
返回 6,因为 555555 有 6 个数字。
这是我的代码。
def place(listy):
if len(listy) == 1:
decimal = len(str(listy[0]))
print(decimal)
else:
if len(str(listy[0])) >= len(str(listy[1])):
new_list = listy[0:1]
for i in listy[2:]:
new_list.append(i)
place(new_list)
else:
place(listy[1:])
现在,当我使用print(decimal)
它时,它可以工作,但如果我更改print(decimal)
为return decimal
,它不会返回任何东西。为什么是这样?我该如何解决?我遇到过这些运行了很多次的返回语句。提前致谢!