溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Python 極簡(jiǎn)教程(三)數(shù)據(jù)類型

發(fā)布時(shí)間:2020-07-21 18:43:01 來(lái)源:網(wǎng)絡(luò) 閱讀:239 作者:minzhung 欄目:軟件技術(shù)

每種語(yǔ)言都有各種數(shù)據(jù)類型。這就像在現(xiàn)實(shí)生活中,我們計(jì)數(shù)的時(shí)候需要用到數(shù)字,在表述金額、重量、距離等需要精確計(jì)數(shù)時(shí)用到小數(shù),在日常交談中要用文字,等等。在計(jì)算機(jī)語(yǔ)言中,為了表述不同的情況,也需要用到各種數(shù)據(jù)類型。

在 Python 主要有數(shù)值類型(int, float),字符串類型,布爾型和空值。

整型 int

Python 中整型來(lái)表示整數(shù),正數(shù)或者負(fù)數(shù),沒(méi)有小數(shù)點(diǎn)。10 和 10.0 是兩種數(shù)據(jù)類型。

浮點(diǎn)數(shù) float

浮點(diǎn)數(shù)也就是我們常見(jiàn)的帶小數(shù)點(diǎn)的數(shù)字。之所以叫浮點(diǎn)數(shù),是因?yàn)樾?shù)點(diǎn)的位置不固定,也就是浮動(dòng)的。
比如 10.01 可以寫(xiě)為 1.001 10^1,也可以寫(xiě)為 0.1001 10^2。

字符串 str

字符串是最常用的數(shù)據(jù)類型之一,用引號(hào)包裹起來(lái)的就是字符串。在 Python 中,引號(hào)可以是雙引號(hào),也可以是單引號(hào)。但是不能混用。
同時(shí)也可以使用三對(duì)引號(hào)(單雙都可以)來(lái)標(biāo)記多行字符串。

>>> char = 'nemo'    # 單引號(hào)
>>> char2 = "python"   # 雙引號(hào)
>>> char3 = 'python"   # 單雙引號(hào)混用,語(yǔ)法錯(cuò)誤
>>> char4 = 'this 's a pig'    # 語(yǔ)法錯(cuò)誤,可以將外面的引號(hào)替換為雙引號(hào),或者使用轉(zhuǎn)義符
>>> char5 = 'this \'s a pig' 

Python 中還有很多關(guān)于字符串的操作,將在后續(xù)教程中詳細(xì)講解。

布爾型 bool

布爾型,只有兩個(gè)值,就是我們通常說(shuō)的真與假,錯(cuò)與對(duì),是和否。
在計(jì)算機(jī)語(yǔ)言中,通常使用布爾值來(lái)表示條件是否成立,條件成立則為 True,不成立則為 False。

>>> 3 > 1
True
>>> 0 < 5
False
>>> 5 == '5'
False

空值 None

空值 None 是 Python 中的一種特殊數(shù)據(jù)類型,嚴(yán)格意義上來(lái)說(shuō)也不算是一種數(shù)據(jù)類型。空值用來(lái)表示什么都沒(méi)有,空字符串不是空,空的字符串也是字符串,而空值什么都不是。在其他語(yǔ)言或數(shù)據(jù)庫(kù)中用 null 表示。
常見(jiàn)于函數(shù)中,當(dāng)函數(shù)沒(méi)有定義返回值的時(shí)候,默認(rèn)返回的就是 None。

判斷數(shù)據(jù)類型的常用函數(shù)

在 Python 中,用于判斷數(shù)據(jù)類型的函數(shù)主要有兩種,type()isinstance()
type()函數(shù)用于查看數(shù)據(jù)的類型:

>>> type(5)
<class 'int'>
>>> type(5.0)
<class 'float'>
>>> type('5')
<class 'str'>

isinstance()用于判斷數(shù)據(jù)的類型,符合返回True,不符合返回False

>>> isinstance(5, int)      # isinstance 需要兩個(gè)參數(shù),第一個(gè)是值,第二個(gè)是類型
True
>>> isinstance('5', int)
False
>>> isinstance('5', str)
True
>>> isinstance(True, int)
True
>>> isinstance(True, bool)
True

這里有個(gè)現(xiàn)象isinstance(True, int)也是符合的,我們上面說(shuō)過(guò) True是布爾型,怎么int型也是符合的呢?
其實(shí)布爾型是int的一種,值只有 0 和 1 罷了。

>>> True == 1
True
>>> False == 0
True

數(shù)據(jù)類型轉(zhuǎn)換

不同的數(shù)據(jù)類型是可以互相轉(zhuǎn)換的。如果要轉(zhuǎn)為整數(shù)類型,可以使用int()函數(shù),如果轉(zhuǎn)為浮點(diǎn)型,可以使用float() 函數(shù), 如果轉(zhuǎn)為字符串類型,可以使用str() 函數(shù)。
目標(biāo)類型
函數(shù)
int int()
str str()
float folat()
>>> int('15')
15
>>> int('15a')   # 報(bào)錯(cuò),字符串轉(zhuǎn) int ,必須全部是十進(jìn)制的數(shù)字
ValueError: invalid literal for int() with base 10: '15a'
>>> int('1.1')   # 報(bào)錯(cuò),看似浮點(diǎn)數(shù)也不行,但是這個(gè)可以用 float 轉(zhuǎn)為浮點(diǎn)數(shù)
ValueError: invalid literal for int() with base 10: '1.1'
>>> float('1.1')
1.1
>>> float('11')
11.0
>>> str(100)
'100'

其余轉(zhuǎn)換情況可自行嘗試。

在 Python 中,任意的數(shù)據(jù)類型,都是對(duì)象!當(dāng)然,還不止于此,在 Python 中所見(jiàn)皆對(duì)象。不過(guò)這句話現(xiàn)在不需要理解,先記住就好。

本結(jié)思考
5 == 5.0,結(jié)果是什么?為什么?
5 is 5.0,結(jié)果是什么?為什么?

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI