陳新龍
上期我們學(xué)習(xí)了Python的列表和元組,通過相關(guān)的練習(xí)應(yīng)該有所收獲。今天來講一講字典和集合。
字典是一種可變?nèi)萜髂P?,可存?chǔ)任意類型對(duì)象。和之前我們講過的列表及元組都不相同,字典中存儲(chǔ)的是一組數(shù)據(jù),這組數(shù)據(jù)包含了兩個(gè)部分鍵和值。例如每個(gè)同學(xué)都有學(xué)號(hào)和姓名,其中學(xué)號(hào)是唯一的,姓名是可能相同的,字典就是這樣的格式,可以把學(xué)號(hào)理解為鍵,姓名理解為值。另外Python默認(rèn)的字典是無序的,不像元組和集合,通過index索引可以獲取值,由于沒有順序,所以字典不存在索引。字典的鍵是唯一的,不能出現(xiàn)多次,多次出現(xiàn)時(shí)取最后一個(gè)值。下面我們創(chuàng)建字典并進(jìn)行一些基本操作。
1.字典的形式及創(chuàng)建
整個(gè)字典包括在花括號(hào) {} 中,可以看出字典每個(gè)元素包含2個(gè)部分,它們分別是“鍵”和“值”,鍵和值之間用:隔開,兩個(gè)元素之間用,隔開。
2.字典元素的訪問
由于字典不存在順序所以也沒有索引,但是我們可以通過訪問其鍵獲取它對(duì)應(yīng)的值,相當(dāng)于我們要去一個(gè)班級(jí)找學(xué)生,只要報(bào)出學(xué)號(hào)就可以找到該學(xué)生了。
3.添加、修改、刪除元素
字典是可以變化的,我們對(duì)其進(jìn)行增加、刪除和修改操作。增加元素就是直接通過鍵值對(duì)其進(jìn)行添加;刪除元素還是通過del語句進(jìn)行,刪除的是一對(duì)元素,包括鍵和值。修改元素就是直接覆蓋了現(xiàn)有元素,它的形式和添加元素的格式類似。以上只是字典的最基礎(chǔ)操作,字典可以存儲(chǔ)各種混合數(shù)據(jù)類型,其中鍵需要取不可變的數(shù)據(jù)類型,但是值可以取任意類型的對(duì)象。
在學(xué)習(xí)數(shù)學(xué)的時(shí)候我們應(yīng)該學(xué)過集合這個(gè)概念,在Python中同樣存在一種名叫集合的數(shù)據(jù)類型,集合(set)是一個(gè)無序的不重復(fù)元素序列。集合的表達(dá)式和字典有點(diǎn)相似都是包括在花括號(hào) {} 中。集合中所保存的元素是沒有順序的,且可以保存多種數(shù)據(jù)類型,集合中的元素都存在唯一性,不能重復(fù)出現(xiàn)。
1.創(chuàng)建集合
創(chuàng)建集合的時(shí)候有2種方式,一種是直接使用集合的特征符號(hào)“{}”來創(chuàng)建,一種是使用set()函數(shù)強(qiáng)制類型轉(zhuǎn)換來創(chuàng)建。集合是由“{}”括起來的結(jié)構(gòu),每個(gè)元素之間用“,”隔開,集合和字典都是用大括號(hào)括起來,但是集合之間不使用冒號(hào),只能使用逗號(hào)。創(chuàng)建一個(gè)空集合必須用 set() 而不是 { },因?yàn)閧 } 會(huì)創(chuàng)建一個(gè)空字典。
2.刪除集合
在學(xué)習(xí)增添和刪除元素之前,還是回憶學(xué)過的del()方法,del()方法可以直接刪除整個(gè)集合。
3.添加、刪除元素
集合是可變序列,因此我們可以對(duì)其中的元素進(jìn)行增刪操作。添加元素使用add()方法;刪除元素可以使用集合的pop()方法或者remove()方法去刪除一個(gè)元素,也可以使用clear()方法清空集合。
需要注意的是remove()方法是移除指定元素,而pop()方法是直接刪除集合中的第一個(gè)元素并輸出,clear()方法直接清空了集合中的所有元素。
通過列表、元組、字典、集合的學(xué)習(xí),我們對(duì)Python的數(shù)據(jù)類型相關(guān)基礎(chǔ)知識(shí)有了初步的掌握。以后我們會(huì)針對(duì)數(shù)據(jù)類型通過一些函數(shù)或項(xiàng)目來進(jìn)一步學(xué)習(xí)。