这个python文件中的%o是多少?

时间:2013-07-03 02:58:43

标签: python

下面是python的表达式。它将整数转换为二进制。

>>>octtab = {'0':'000', '1':'001', '2':'010', '3':'011',
      '4':'100', '5':'101', '6':'110', '7':'111'}
>>>def bin1(d, width=0):
    "integer to binary (string)"
    s = "%o" % d
    b = ''
    for el in s:
        b += octtab[el]
    if width > 0:
        if len(s) > width:
            return b[:width]
        b = b.zfill(width)
    return b

我不知道%o的含义。在此先感谢:)

1 个答案:

答案 0 :(得分:5)

%ostring formatting。您使用%o表示八进制数(即基数为8的数字):

>>> print "%o" % 011
11
>>> print "%o" % 8
10 # Because 010 == 8