Python整數型別(int)詳解

2021-10-10 09:32:34 字數 2627 閱讀 2762

整數就是沒有小數部分的數字,python 中的整數包括正整數、0 和負整數。

有些強型別的程式語言會提供多種整數型別,每種型別的長度都不同,能容納的整數的大小也不同,開發者要根據實際數字的大小選用不同的型別。例如c語言提供了 short、int、long、long long 四種型別的整數,它們的長度依次遞增,初學者在選擇整數型別時往往比較迷惑,有時候還會導致數值溢位。

而 python 則不同,它的整數不分型別,或者說它只有一種型別的整數。python 整數的取值範圍是無限的,不管多大或者多小的數字,python 都能輕鬆處理。

當所用數值超過計算機自身的計算能力時,python 會自動轉用高精度計算(大數計算)。

請看下面的**:

#將 78 賦值給變數 n

n =78

print

(n)print

(type

(n))

#給x賦值乙個很大的整數

x =8888888888888888888888

print

(x)print

(type

(x))

#給y賦值乙個很小的整數

y =-

7777777777777777777777

print

(y)print

(type

(y))

執行結果:

78

8888888888888888888888

-7777777777777777777777

x 是乙個極大的數字,y 是乙個很小的數字,python 都能正確輸出,不會發生溢位,這說明 python 對整數的處理能力非常強大。

不管對於多大或者多小的整數,python 只用一種型別儲存,就是 int。

python 3.x 只用 int 一種型別儲存整數,但是 python 2.x 會使用 long 型別來儲存較大的整數。以上**在 python 2.x 下的執行結果為:

78

8888888888888888888888

-7777777777777777777777

但是不管哪個版本的 python,都能輕鬆處理極大和極小的數字,而且程式設計師也不用操心底層到底使用了 int 還是 long 型別。

在 python 中,可以使用多種進製來表示整數:

1) 十進位制形式

我們平時常見的整數就是十進位制形式,它由 0~9 共十個數字排列組合而成。

注意,使用十進位制形式的整數不能以 0 作為開頭,除非這個數值本身就是 0。

2) 二進位制形式

由 0 和 1 兩個數字組成,書寫時以0b或0b開頭。例如,101 對應十進位制數是 5。

3) 八進位制形式

八進位制整數由 0~7 共八個數字組成,以0o或0o開頭。注意,第乙個符號是數字 0,第二個符號是大寫或小寫的字母 o。

在 python 2.x 中,八進位制數字還可以直接以0(數字零)開頭。

4) 十六進製制形式【例項】不同進製整數在 python 中的使用:

#十六進製制

hex1 =

0x45

hex2 =

0x4af

print

("hex1value: "

, hex1)

print

("hex2value: "

, hex2)

#二進位制

bin1 =

0b101

print

('bin1value: '

, bin1)

bin2 =

0b110

print

('bin2value: '

, bin2)

#八進位制

oct1 =

0o26

print

('oct1value: '

, oct1)

oct2 =

0o41

print

('oct2value: '

, oct2)

執行結果:

hex1value: 69

hex2value: 1199

bin1value: 5

bin2value: 6

oct1value: 22

oct2value: 33

本例的輸出結果都是十進位制整數。

為了提高數字的的可讀性,python 3.x 允許使用下劃線_作為數字(包括整數和小數)的分隔符。通常每隔三個數字新增乙個下劃線,類似於英文數字中的逗號。下劃線不會影響數字本身的值。

【例項】使用下劃線書寫數字:

click = 1_301_547

distance = 384_000_000

print

(, click)

print

("地球和月球的距離:"

, distance)

執行結果:

1 2 Python整數型別(int)詳解

整數就是沒有小數部分的數字,python 中的整數包括正整數 0 和負整數。有些強型別的程式語言會提供多種整數型別,每種型別的長度都不同,能容納的整數的大小也不同,開發者要根據實際數字的大小選用不同的型別。例如c語言提供了 short int long long long 四種型別的整數,它們的長度...

Python基礎 int型別方法

int型別建立的兩張方式 直接賦值 變數名 變數值 通過int函式進行賦值 變數名 int 變數值 int型別的內部優化 如果int型別值得範圍在 5到257之間且建立了兩個變數值相同的變數,那麼這兩個變數將指向同一塊記憶體 和其他高階語言類似 注 如果變數超出記憶體範圍,那麼python會自動將i...

python資料型別之int型別

python提供了兩種內建的int型別,即int與bool 整數與布林型值都是固定的。在布林表示式中,0與false表示false,其他任意整數與true都表示true。在數字表示式中,true表示1,false表示0。整數 整數的大小只受於機器的記憶體大小,預設以十進位制,二進位制以0b引導,八進...