python判断正整数是几位数_Python:给定一个不超过5位的正整数,判断有几位

方法一:作比较

[root@python markPy]# cat five.py

#!/usr/bin/python3

a=int(input(">>>>"))

if a<10:

print(1)

elif a<100: #第一个条件已经过滤了大于9,所以这里区间是11到100

print(2)

elif a<1000:

print(3)

elif a<10000:

print(4)

else:

print(5)

方法二:使用整除实现,除完后如果是个0或不是个0,这种方法引入了计算,效率会降低,所以能加就不要减,能乘就不要除,能不计算就不计算

i = int(intput('>>>')

if i // 10000:

print(5):

elif i // 1000:

print(4)

elif i // 100:

print(3)

elif i // 10:

print(2)

else:

print(1)

分析:假设是在5位的情况下,不考虑其他状况

In [1]: 6666 // 10000

Out[1]: 0 除以10000为零证明是小于5位数

In [2]: 6666 // 1000

Out[2]: 6 但是如果能被1000整除,它就是一个4位数

In [3]

你可能感兴趣的:(python判断正整数是几位数)