2014-10-09 144 views
-1

我试图找出这是在Python 2:Python 2中的“0100644”是什么意思?

>>> x=0100644 
>>> x 
33188 
>>> x=100644 
>>> x 
100644 

正如你可以使用或不看领导“0”,x值是在Python 2不同,我不会大幅熟悉Python 2类型。你能帮我看看0100644是在Python 2中吗?

+0

听起来像八进制。该值同意。 – 2014-10-09 11:40:14

+0

更好的重复将是:http://stackoverflow.com/questions/5243968/why-is-00100-64-in-python/5243986#5243986 – Barmar 2014-10-09 11:43:02

回答

1

在Python 2.x中,前导码为0的任何东西都是八进制的,0b是二进制的,0x是十六进制的。

>>> 0b01010 # binary 
10 

>>> 01010 # octal 
520 

>>> 0x01010 # hex 
4112 

>>> 1010 # decimal 
1010 
+2

你为什么回答_and_ closevote?关闭投票应该足够多。 – 2014-10-09 11:44:01

+0

因为我看到了重复,并且它似乎只是讨论八进制,所以我想我会显示其他解释类型只是为了完整性。 – CoryKramer 2014-10-09 11:44:59

+0

如果问题确实是重复的(而不仅仅是相似),您可以提供关于重复问题的答案。 – chepner 2014-10-09 12:42:00