【发布时间】:2018-05-22 03:25:55
【问题描述】:
我正在尝试计算输入的位数。但是,每当我输入10 或11 或任何两位数时,输出都是325。为什么它不起作用?
inputnumber = int(input())
countnumber = inputnumber
digitcount = 0
while countnumber > 0:
digitcount += 1
countnumber = countnumber/10
print(digitcount)
# result is 325 when input is 10 or 11
【问题讨论】:
-
是python 2还是3?
-
你可以通过其他方式来做到这一点..请参考stackoverflow.com/questions/2189800/…
-
@pstatix 您无需转换为
int,然后再转换为str。input()已经是一个字符串。只需len(input())即可。要处理负数,请使用len(str(abs(int(input()))))。 -
@Elisha 它是 Python3。看到这个问题来证明它:stackoverflow.com/questions/21316968/…
标签: python python-3.x decimal division digits