1、整型
整數(shù)類型(int)簡稱整型,它用于表示整數(shù),例如,100、2016等。整型字面值的表示方式有四種,分別是十進制、二進制(以“0B”或“0b”開頭)、八進制(以數(shù)字“0”開頭)和十六進制(以“0x”或“0X”開頭)。
Python的整型可以表示的范圍是有限的,它和系統(tǒng)的最大整型一致,例如,32位計算機上的整型是32位,可以表示的數(shù)的范圍是-2
31~2
31-1。在64位計算機上的整型是64位的,可以表示的數(shù)的范圍是-2
63~2
63-1。
接下來,看一些整型的示例代碼,具體如下:
>>> a = 0b10100
>>> type (a)
<type ‘int’>
>>> a
20
上述代碼中,第1行代碼的變量a的值是一個二進制的整數(shù),它屬于int類型,這點在第2~3行代碼中得到了驗證。第4~5行代碼直接輸出a的值,結(jié)果是十進制的20。十進制的數(shù),如果想轉(zhuǎn)換為二進制、八進制或者十六進制,可以使用指定的函數(shù)來完成。示例代碼如下:
>>> bin(20) # 將十進制的20轉(zhuǎn)為二進制
‘0b10100’
>>> oct(20) # 將十進制的20轉(zhuǎn)為八進制
>>> hex(20) # 將十進制的20轉(zhuǎn)為十六進制
‘0x14’
長整型(long)是整型的超集,它可以表示無限大的整數(shù)(實際上只受限于計算機的虛擬內(nèi)存大小)。長整型字面值的后面帶有字母“L”或“l”(推薦使用大寫的“L”)。長整型與整型的操作完全相同。示例代碼如下:
>>> a = 10000000000*10000000000
>>> a
a = 10000000000*10000000000
>>> type(a)
<type 'long'>
2、浮點型
浮點型(float)用于表示實數(shù)。例如,3.14、9.19等都屬于浮點型。浮點型字面值可以用十進制或科學(xué)計數(shù)法表示。Python中的科學(xué)計數(shù)法表示如下:
<實數(shù)>E或者e<整數(shù)>
其中,E或e表示基是10,后面的整數(shù)表示指數(shù),指數(shù)的正負使用+或者一表示,其中,+可以省略。例如,1.34E3表示的是1.34×10
3,1.5E-3表示的是1.5×10
-3。
需要注意的是,Python的浮點型遵循的是IEEE 754雙精度標(biāo)準(zhǔn),每個浮點數(shù)占8個字節(jié),表示的數(shù)的范圍是-1.8
308~18
308。示例代碼如下:
>>> 1.2e5 # 浮點數(shù)為1.2×10
120000.0
>> -1.8e308 # 浮點數(shù)為-1.8×10308,超出了可以表示的范圍
- inf
>>> 1.8e308 # 浮點數(shù)為1.8×10308,超出了可以表示的范圍
inf
3、布爾型
布爾類型可以看做是一種特殊的整型,布爾型數(shù)據(jù)只有兩個取值:True和False,分別對應(yīng)整型的1和0。每一個 Python對象都天生具有布爾值(Ture或 False),進而可用于布爾測試(如用在if、whie中)。
以下對象的布爾值都是 False:
(1) None
(2) False (布爾型)
(3) 0(整型0)
(4) 0L(長整型0)
(5) 0.0(浮點型0)
(6) 0.0+0.0j(復(fù)數(shù)0)
(7)“”(空字符串)
(8) [] (空列表)
(9) ()(空元組)
(10) {}(空字典)
用戶自定義的類實例,如果定義了方法 nonzero()或len(),那么這些方法會返回0或False。除了上述對象之外的所有其他對象的布爾值都為True。
5、復(fù)數(shù)類型
復(fù)數(shù)類型用于表示數(shù)學(xué)中的復(fù)數(shù),例如,5+3j、-3.4-6.8j都是復(fù)數(shù)類型。Python中的復(fù)數(shù)類型是一般計算機語言所沒有的數(shù)據(jù)類型,它有以下兩個特點:
(1)復(fù)數(shù)由實數(shù)部分和虛數(shù)部分構(gòu)成,表示為real+imagj或real+imagJ。
(2)復(fù)數(shù)的實數(shù)部分real和虛數(shù)部分imag都是浮點型。
需要注意的是,一個復(fù)數(shù)必須有表示虛部的實數(shù)和j,如1j、-1j都是復(fù)數(shù),而0.0不是復(fù)數(shù),并且表示虛部的實數(shù)部分即使是1也不能省略。
復(fù)數(shù)的示例代碼如下:
>>> a = 1+2j
>>> a
(1+2j)
>> a. real # 實數(shù)部分
1.0
>>> type (a.real)
<class ‘float’>
>>> a.imag #虛數(shù)部分
2.0
>>> type(a.imag)
<class ‘floatI’>
不同類型的數(shù)字類型之間可以進行轉(zhuǎn)換,只不過轉(zhuǎn)換過程中,需要借助一些函數(shù),常見的數(shù)字類型之間的轉(zhuǎn)換方式如下。
函數(shù) |
說明 |
Int(x[,base]) |
將x轉(zhuǎn)換為一個常數(shù) |
Float(x) |
將x轉(zhuǎn)換為一個浮點數(shù) |
Complex(real[,imag]) |
創(chuàng)建一個復(fù)數(shù) |
在上表中,第1個函數(shù)用于將數(shù)值轉(zhuǎn)為整型,第2個函數(shù)用于將數(shù)值轉(zhuǎn)為浮點型,第3個函數(shù)用于創(chuàng)建一個復(fù)數(shù),示例代碼如下:
# 將浮點數(shù)轉(zhuǎn)為整數(shù)
>> a = 1.2
>>int (a)
# 將整數(shù)轉(zhuǎn)為浮點數(shù)
>> b = 2
>> float(b)
2.0
# 創(chuàng)建一個復(fù)數(shù)
>> complex (3.4)
(3.4+0j)
以上傳智播客為您介紹了“
Python 的基本數(shù)值類型”,希望對您有所幫助,如果您想了解更多,請點擊頁面資訊按鈕,獲得幫助。
推薦了解熱門學(xué)科