我希望Python将030之类的数字识别为30.由于某种原因,当我写“print 030”时它返回24,当我写“print 020”时它返回16.这是什么原因以及如何让它对待它30?
由于
答案 0 :(得分:2)
如何将其视为30?
正常写30
,或者如果你接受这个数字作为字符串,
>>> int('030')
30
将按预期工作。
答案 1 :(得分:0)
前导0信号'八进制'格式,即基数为8.
print "0{}".format(30)
--output:--
030
如何将其视为30?
你永远不能让python 2.x将030视为30。
答案 2 :(得分:0)
大多数语言将以0开头的数字视为八进制数,因此30八进制= 3 * 8 = 24
答案 3 :(得分:0)
我能想到的一种方式就是这样。
n='030'
n=n[1:]
n=int(n)
现在n的数字可以被视为整数30