Python3中有6種標(biāo)準(zhǔn)的數(shù)據(jù)類型:Number(數(shù)字)刁愿、String(字符串)、List(列表)、Tuple(元組)起愈、Sets(集合)和Dictionary(字典)。
數(shù)字
Python 數(shù)字?jǐn)?shù)據(jù)類型用于存儲(chǔ)數(shù)值译仗。Python3支持以下4種不同的數(shù)據(jù)類型抬虽。
- 整型(Int):也稱為整數(shù),包含正整數(shù)或負(fù)整數(shù)纵菌,不帶小數(shù)點(diǎn)阐污。Python3整型是沒有限制大小的,可以當(dāng)作Long類型使用咱圆。
- 浮點(diǎn)型(Float):浮點(diǎn)型由整數(shù)部分與小數(shù)部分組成笛辟,浮點(diǎn)型也可以使用科學(xué)計(jì)數(shù)法表示。
- 復(fù)數(shù)型(complex):復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成序苏,可以用a+bj手幢,或者complex(a,b)表示痒蓬,復(fù)數(shù)的實(shí)部和虛部都是浮點(diǎn)型关炼。
- 布爾型(bool):Python3中,把True和False定義成關(guān)鍵字皇帮,但它們的值還是1和0。
有時(shí)需要對(duì)數(shù)據(jù)內(nèi)置的類型進(jìn)行轉(zhuǎn)換监透,數(shù)據(jù)類型的轉(zhuǎn)換只需要將數(shù)據(jù)類型作為函數(shù)名即可桶错。數(shù)據(jù)類型轉(zhuǎn)換函數(shù)如下。
- int(x)將函數(shù)x轉(zhuǎn)換為一個(gè)整數(shù)才漆。
- float(x)將x轉(zhuǎn)換為一個(gè)浮點(diǎn)數(shù)牛曹。
- complex(x)將x轉(zhuǎn)換為一個(gè)復(fù)數(shù),實(shí)數(shù)部分為x醇滥,虛數(shù)部分為0黎比。
- complex(x,y)將x和y轉(zhuǎn)換為一個(gè)復(fù)數(shù),實(shí)數(shù)部分為x鸳玩,虛數(shù)部分為y阅虫。x和y是數(shù)字表達(dá)式。
字符串
Python中的字符串用單引號(hào)或雙引號(hào)括起來不跟。創(chuàng)建字符串很簡(jiǎn)單颓帝,只要為變量分配一個(gè)值即可。例如:
str1 = "Hello Python!"
Python訪問字符串窝革,可以使用方括號(hào)來街區(qū)字符串购城,基本語法如下:
變量[頭下標(biāo):尾下標(biāo)]
其中下標(biāo)最小的索引值以0為開始值,-1為從末尾開始位置虐译。Python中的字符串有兩種索引方式瘪板,從左往右以0開始,從右往左以-1開始漆诽。例如:
print(str1) # 輸出字符串
print(str1[0:-1]) #輸出第一個(gè)到倒數(shù)第二個(gè)的所有字符
print(str1[0]) # 輸出字符串第一個(gè)字符
print(str1[2:5]) # 輸出從第三個(gè)開始到第五個(gè)字符
print(str1[2:]) # 輸出從第三個(gè)開始的所有字符
print(str1 *2) # 輸出字符串兩次
Python字符串不能被改變侮攀,向一個(gè)索引位置賦值,如str1[0] = 'h'會(huì)產(chǎn)生錯(cuò)誤厢拭。
列表
List(列表)是Python中使用最頻繁的數(shù)據(jù)類型兰英。列表可以完成大多數(shù)集合類的數(shù)據(jù)結(jié)構(gòu)的實(shí)現(xiàn)。列表中元素的類型可以不相同供鸠,它支持?jǐn)?shù)字畦贸、字符串,甚至可以包含其他列表(嵌套)回季。
列表是寫在方括號(hào)里家制、用逗號(hào)分隔開的元素列表。和字符串一樣泡一,列表同樣可以被索引和截取,列表被截取后返回一個(gè)包含所需元素的新列表觅廓。
列表截取的語法格式如下:
變量[頭下標(biāo):尾下標(biāo)]
索引值的取值和字符串類似鼻忠,其中下標(biāo)最小的索引值以0為開始值,以-1為從末尾的開始位置。Python中的字符串有兩種索引方式帖蔓,從左往右以0開始矮瘟,從右往左以-1開始。
list = ['abcd', 123, 456, 'Python', 78.9]
print(list) # 輸出完整列表
print(list[0]) # 輸出列表的第一個(gè)元素
print(list[1:3]) # 從第二個(gè)元素開始輸出到第三個(gè)元素
print(list[2:]) # 輸出從第三個(gè)元素開始的所有元素
與Python字符串不同塑娇,列表的元素是可以改變的澈侠。例如:
a = [1,2,3,4,5,6]
a[0] = 'a'
a[2:3] = ['b', 'hello']
此外,列表中的元素還可以被刪除埋酬。例如:
a[2:4] = []
此時(shí)哨啃,把原列表中的元素['b', 'hello']刪除,余下的內(nèi)容如下:
['a', 2, 4, 5, 6]
元組
元組(Tuple)與列表類似写妥,不同之處在于元組的元素不能修改拳球。元組寫在小括號(hào)里,元素之間用逗號(hào)隔開珍特。元組中的元素類型也可以不相同祝峻。元組與字符串類似,可以被索引且下標(biāo)索引從0開始扎筒,-1為從末尾開始的位置莱找。元組也可以進(jìn)行截取∈茸溃可以把字符串看作一種特殊的元組奥溺。
元組中的元素訪問方法和列表類似。例如:
tuple1 = ('abcd', 123, 4.56, 'Python', 78.9)
print(tuple1) # 輸出完整元組
print(tuple1[0]) # 輸出元組第一個(gè)元素
print(tuple1[1:3]) # 從第二個(gè)元素開始輸出到第三個(gè)元素
print(tuple1[2:]) # 輸出從第三個(gè)元素開始的所有元素
集合
集合(set)是一個(gè)無序不重復(fù)元素的序列症脂⊙枋辏基本功能是進(jìn)行成員關(guān)系測(cè)試和刪除重復(fù)元素∮张瘢可以使用大括號(hào)({})或set()函數(shù)創(chuàng)建集合壶唤。注意,創(chuàng)建一個(gè)空集合必須用set()函數(shù)而不是大括號(hào)棕所。
例如闸盔,下面的集合實(shí)例:
student = {'Tom', 'Jim', 'Mary', 'Tom', 'Jack', 'Rose'}
print(student)
a = set('abcdabc')
print(a)
字典
字典(Dictionary)是Python中另一個(gè)非常有用的內(nèi)置數(shù)據(jù)類型。列表是有序的對(duì)象集合琳省,字典是無序的對(duì)象集合迎吵。兩者之間的區(qū)別在于:字典中的元素是通過鍵來存取的,而不是通過索引值存取的针贬。
字典是一種映射類型击费,字典用{}標(biāo)識(shí),它是一個(gè)無序的鍵:值對(duì)集合桦他。在同一個(gè)字典中蔫巩,鍵必須是唯一的,但是值則不必唯一,值可以取任何數(shù)據(jù)類型圆仔,但鍵必須是不可變的垃瞧,如字符串、數(shù)字或元組坪郭。
例如个从,下面兩個(gè)都是字典的定義:
dict1 = {'Alice': '1234', 'Beth': '5678', 'Cecil': 'abcd'}
dict2 = {'abc': 123, 98.6: 37}
如果要訪問字典中的值,則把相應(yīng)的鍵放入方括號(hào)內(nèi)即可歪沃。例如:
print("dict1['Alice']:", dict1['Alice'])
print("dict2[98.6]:", dict2[98.6])
當(dāng)需要修改字典是嗦锐,向字典添加新內(nèi)容的方法是增加新的鍵/值對(duì),或者修改或者刪除已有鍵/值對(duì)绸罗。例如:
dict1['Beth'] = 80
dict1['new'] = 'Hello'