Python不同進位之間的轉換

2019-10-30     科技i關注

不同的進位

二進位 0b101

以數字0和字母b打頭的表示二進位數 如果出現大於等於2的數 會拋出SyntaxError異常

八進位 0711

以數字0打頭的數字表示八進位數 如果出現大於等於8的數 會拋出SyntaxError異常

十進位 123

正常顯示 不能出現字母

十六進位 0x15

以數字0和字幕x打頭的表示十六進位數 可以出現0-9和abcdef或ABCDEF出現其他數值會拋出SyntaxError異常

python 2.6以後內置函數

#10進位轉為2進位

>>> bin(10)

'0b1010'

#2進位轉為10進位

>>> int("1001",2)

9

#10進位轉為16進位

>>> hex(10)

'0xa'

#16進位到10進位

>>> int('ff', 16)

255

>>> int('0xab', 16)

171

#十進位轉為八進位

>>print("%o" % 10)

>>12

#16進位到2進位

>>> bin(0xa)

'0b1010'

>>>

#10進位到8進位

>>> oct(8)

'010'

#2進位到16進位

>>> hex(0b1001)

'0x9'

另外,在交互式解釋器環境中.python會自動的將不同的進位自動轉換為十進位,進行運算.

>>> 0b101 + 0711 + 123 + 0x15

606

更多技巧請《轉發 + 關注》哦!

文章來源: https://twgreatdaily.com/zh/lCD9Gm4BMH2_cNUg-lk5.html