在Python中带有前导零的值结果不准确,请问发生了什么?
zipcode = 02132
print zipcode
结果是 1114
6 个回答
6
除了八进制的事情之外:
邮政编码、社会保障号码、信用卡号码、电话号码等等,实际上并不是可以进行有意义的数学运算的数字。所以,不要把它们当作整数来处理,而是应该把它们当作字符串来保存。
9
在Python 2.x中,前面有零的数字会被当作八进制(基数为八)来理解。而在Python 3.x中,想要表示八进制数字需要在前面加上“0o”。如果你想处理邮政编码,最好把它当作字符串来处理,这样可以保留前面的零。
15
前面加零表示这是八进制数。比如,八进制的2132在十进制中等于1114。Python 3.0中把这种写法给去掉了。