2015-05-11 52 views

回答

15

您的號碼p是實際而不是價值的表示。所以它實際上同時是65010,1212828a16,

如果你想看到它爲八進制,只需使用:

print oct(p) 

按照以下成績單:

>>> p = 01212 
>>> print p 
650 
>>> print oct(p) 
01212 

這對於Python 2中(你會因爲你要使用使用八進制文字的0NNN變體而不是0oNNN)。

的Python 3有一個稍微不同的表示:

>>> p = 0o1212 
>>> print (p) 
650 
>>> print (oct(p)) 
0o1212 
+0

在python3有輕微的修改 – Ajay

+0

TKS你的答案兄弟,我解決我的問題 – maphongba008

+0

@Ajay,雖然我相信OP仍在使用Py2,但添加了Py3的東西。仍然很高興知道。 – paxdiablo

6

一種方式是USSE從Format Mini Specification Languageo格式字符:

實施例:

>>> x = 01212 
>>> print "0{0:o}".format(x) 
01212 

'O' 的八進制格式。在產出基地數量8

注:您還必須預先考慮0除非你使用內置函數oct())。

更新:如果您正在使用Python 3+:

$ python3.4 
Python 3.4.0 (default, Apr 11 2014, 13:05:11) 
[GCC 4.8.2] on linux 
Type "help", "copyright", "credits" or "license" for more information. 
>>> x = 01212 
    File "<stdin>", line 1 
    x = 01212 
      ^
SyntaxError: invalid token 
>>> x = 0o1212 
>>> print(oct(x)) 
0o1212 
>>> print("0o{0:o}".format(x)) 
0o1212 
+0

TKS你的答案兄弟,我解決我的問題 – maphongba008

相關問題