您可以创建一个计数器,并且while循环应如下所示:
num = int(input("enter num"
result = 0
while num > 10:
num = num // 10
result += 1
result += 1
print(result)
,
由于您正在运行无限while循环,因此会引发错误。代替。
number = int(input("Enter a positive integer: "))
number = str(number)
digits = 0
for i in number:
print(i)
digits+=1
,
您还可以使用log10
(以10为底的对数)功能:
import math
number = int(input("Enter a positive integer: "))
print(1 + int(math.log10(number)))
,
仅通过打印与换行符分隔的字符串元素即可解决问题,而无需尝试查找字符串中有多少个元素:
number = input("Enter a positive integer: ")
print('\n'.join(number))
,
出现错误的原因是,当digits
获得数字长度的值时说l
,则number[l]
不存在(索引开始从0开始)
number = input("Enter a positive integer: "))
# type(number) is <class 'str'> you don't have to convert to int and reconvert to string
# since <class 'str'> implements iterable you could go like this ..
digits = 0
for digit in number:
print(digit) # digit is still a str here
digits += 1
本文链接:https://www.f2er.com/3168794.html