Python I';I’我想用正整数和负整数来计算小数位数
这是我的代码,它应该告诉我正整数和负整数中十进制数字的计数Python I';I’我想用正整数和负整数来计算小数位数,python,Python,这是我的代码,它应该告诉我正整数和负整数中十进制数字的计数 def num_digits(n): count = 0 for i in range(0, len(str(n))): count += n % 10 n = n // 10 return count num_digits(2) print() print() num_digits(12) print() print() num_digits(123) 当我运行程序时,什么
def num_digits(n):
count = 0
for i in range(0, len(str(n))):
count += n % 10
n = n // 10
return count
num_digits(2)
print()
print()
num_digits(12)
print()
print()
num_digits(123)
当我运行程序时,什么也得不到你能给我看一下正确编写的完整代码吗
def num_digits(n):
count = 0
for i in range(0, len(str(n))):
print(f'count:{count} n:{n} n%10:{n%10}')
count += n % 10
n = n // 10
return count
num_digits(2)
print()
print()
num_digits(12)
print()
print()
num_digits(123)
这类代码可以工作,但我需要它更好符合您的要求的正确代码
def num_digits(n):
count = 0
while n>0:
count+=1
n=n//10
return count
print(num_digits(2))
print(num_digits(12))
print(num_digits(123))
您正在忽略函数返回的值并执行空打印。尝试打印(数字(2))为什么不:
len(str(abs(number)))
?您现在可以打印数字了,但它会向数字中添加一个,就像打印(数字(2))--它在应该打印1时打印2。。。或分配返回值并打印:n=num\u位(2);打印(n)
。欢迎使用SO。不幸的是,这不是一个讨论论坛或教程服务。请花点时间阅读该页面上的链接和其他链接。你应该花一些时间来练习这些例子。它将向您介绍Python所提供的工具,您甚至可以开始获得解决问题的想法。如果正确,请让我知道