Python中數值和進製轉換

2021-06-03 08:55:32 字數 1252 閱讀 1479

python數值和進製轉換

1.1 python中數值型別

int          整型          123 

long     長整型          2147483648l 

float     浮點型          3.14

不同的數值型別會自動擴充 

int數值大於或等於2^31次方,會自動轉換成long 

表示方式是在數值後面加上l 

如果int或long和float一起運算,結果會自動擴充到float

>>> 3.14 + 1 

4.14

python中沒有數值溢位的概念,如果超出int的範圍會自動擴充到long, 

而長整型上不封頂,可以表示非常大的數字

1.2 不同的進製

二進位制    0b101 

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

八進位制    0711 

以數字0打頭的數字表示八進位制數 如果出現大於等於8的數 會丟擲syntaxerror異常 

十進位制    123 

正常顯示 不能出現字母 

十六進製制  0x15 

以數字0和字幕x打頭的表示十六進製制數 可以出現0-9和abcdef或abcdef出現其他數值會丟擲syntaxerror異常

在互動式直譯器環境中.python會自動的將不同的進製自動轉換為十進位制,進行運算.

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

606不同的進製之間可以運用內建函式進行轉換

常用的轉換函式有: 

int(str, base)      ==> int 

bin(num)            ==> str 

oct(num)            ==> str 

hex(num)           ==> str

int(str, base) 可以講字串轉換為整型數,base為相應的進製 

base的範圍是2~32 還可以為0,當base=0時,會自動嘗試合適的進製 

base如果不給,預設情況下會吧字串向10進製轉換, 

這時如果字串中有字母則會丟擲valueerror異常

>>> bin(5) 

'0b101' 

>>> int('0x210', 0) 

528 

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

528

python 數值系列 進製轉換

前語 如果您不通二進位制,八進位制,十六進製制,請移步 你需要轉換或者輸出使用二進位制,八進位制或十六進製制表示的整數。為了將整數轉換為二進位制 八進位制或十六進製制的文字串,可以分別使用bin oct 或hex 函式 1 x 1234 2 bin x 3 0b10011010010 4 oct x...

C 中數值的進製轉換總結介紹

在日常應用中,常用的數值進製有10進製 8進製 16進製制 和 2進製。在 net 裡,實現數制轉換可以說是非常簡單方便的,大致的實現方式有兩種 system.convert.toint?int frombase frombase表示原數的進製,可以為 2,8,16 system.convert.t...

js中數值各進製之間的轉換

tostring 方法可把乙個 number 物件轉換為乙個字串,並返回結果。語法如下 numberobject.tostring radix 其中,radix為可選。規定表示最終轉換成的數字的基數,使 2 36 之間的整數。若省略該引數,則使用基數 10。但是要注意,如果該引數是 10 以外的其他...