python 字串二進位制 十進位制和十六進製制

2021-10-19 01:56:35 字數 1783 閱讀 3486

二進位制

二進位制數是以 0b或者 0b開頭,並且所有字元只能包含 0和 1

比如  0101  是二進位制數
八進位制

八進位制數以 0o或 0開頭,並由0~7組成

比如   0266(八進位制數)
十進位制數

十進位制數第一位不是0,除表示正負符號外,要以1-9開頭,由0-9組成

比如 -

123(十進位制數)123(十進位制數)

十六進製制數

十六進製制數以0x或0x開頭,由0-9,a-f或a-f組成

比如  0x16 、0xf1(均為16進製制數)
轉化

十六進製制 到 十進位制

使用 int() 函式 ,第乙個引數是字串 『0xff』 ,第二個引數是說明,這個字串是幾進製的數。 轉化的結果是乙個十進位制數。

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

15二進位制 到 十進位制

>>> int('10100111110',2)

1342

八進位制 到 十進位制

>>> int('17',8)

15其實可以看到,不管 幾進製數 轉換成 十進位制數 ,都是用 int() 函式 。之後後面的 第二個引數 寫清楚 前面字串 是 幾進製數就可以 。注意一定要合法。 比如2進製數就不能出現2這樣的字元。

十進位制 轉 十六進製制

>>> hex(1033)

『0x409』

二進位制 轉 十六進製制

就是 二進位制先轉成 十進位制, 再轉成 十六進製制。

>>>hex(int('101010',2))

『0x2a』

八進位製到 十六進製制

就是 八進位制先轉成 十進位制, 再轉成 十六進製制。

>>> hex(int('17',8))

『0xf』

十進位制轉二進位制

>>> bin(10)

『0b1010』

十六進製制轉 二進位制

十六進製制->十進位制->二進位制

>>> bin(int('ff',16))

『0b11111111』

八進位制 到 二進位制

八進位制先到十進位制,再到二進位制

>>> bin(int('17',8))

『0b1111』

二進位制 到 八進位制

>>> oct(0b1010)

『012』

十進位製到八進位制

>>> oct(11)

『013』

十六進製製到八進位制

>>> oct(0xf)

『017』

可見oct 函式 可將 任意進製的數 轉換成 8進製的。

十進位制數轉二進位制字串

今天為了完成老師布置的乙個crc 迴圈冗餘校檢 的編碼作業,其中有乙個子程式是要從十進位制轉成二進位制字串顯示 不做不知道 做起來竟然除錯得我沒有脾氣 想不到以為很簡單,竟然是要考慮很多東西的哦呵 差點受打擊了 因為方便的原因用上到mfc裡的cstring類 十進位制轉二進位制 void ccrc ...

Python二進位制轉十進位制演算法 十進轉二進位制演算法

二進位制數轉換成十進位制數 二進位制數從右向左每位數乘以2的次方 從0開始,從右向左依次 1 然後相加求和即可 如 0101轉成十進位制為 1 20 0 21 1 22 0 23 1 0 4 0 5 演算法實現 coding utf 8 b raw input 請輸入乙個二進位制數 decode u...

計算二進位制字串

4646598ce4f12f0f484da18acbd83813.png en resource database 11364 1 1226f6e4e21ed6df41356aa6e9e857c0.png en resource database 11366 1 遇到難度較大的題目的解題步驟 1.找...