這篇文章給大家分享的是有關(guān)Python中字典是什么意思的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
我們提供的服務(wù)有:成都做網(wǎng)站、網(wǎng)站設(shè)計、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認證、正藍ssl等。為上千多家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學管理、有技術(shù)的正藍網(wǎng)站制作公司
一、什么是字典?
官方的解釋:字典是Python語言中唯一的映射類型。映射類型對象(Key)和只想的對象(Value)是一對多的關(guān)系,通常被認為是可變的哈希表。字典對象是可變的,它是一個容器類型,能夠存儲任意個數(shù)的Python對象,其中也可包括其他容器類型。
通俗的解釋:就是一個“柜子”里面有很多“小空間”,這個“小空間”根據(jù)職能可以分為“放書的小空間”、“放衣服的小空間”、“放鞋的小空間”等,并且這些“小空間”里面按照職能都放了對應的書、衣服、鞋等,這就組成了一個字典。一圖勝千言,如下:
學過C++、Java的小伙伴,你可能會想到Map容器,其實Python中的字典與C++中的map容器很相似,都是鍵值對的形式存儲,然而Python中對字典的操作遠比C++中對map的操作要方便的多。
二、字典有什么用
想想一下當你需要快速的獲取對應key的value的時候,就可以使用python的字典了。比如:根據(jù)上面我舉得關(guān)于柜子的例子,讓你去柜子里面拿一本書’圍城‘,你就可以直接根據(jù)關(guān)鍵字(key)‘放書的小空間’找到這本書‘ 圍城‘,你過你沒有這個關(guān)鍵字,你可能要去整個柜子里面去找。這樣就會相當?shù)穆闊?/p>
再比如一個人是有名字,但是這個人還有其他的屬性,例如:年齡,性別等等。這個人就會被封裝成一個對象。如果有很多人的時候,我們需要快速的根據(jù)一個人的名字獲取對應名字的對象,這個時候字典就有用了。如果采用數(shù)組,我們需要遍歷整個數(shù)組,才可以根據(jù)名字找到這個人。如果是字典(以名字為key,以人的對象為value),就可以直接根據(jù)名字得到這個對象,就不要遍歷操作了。
根據(jù)上面的兩個例子可以看到,使用字典管理數(shù)據(jù)對象,存取數(shù)據(jù)對象的時候會很有用。
三、創(chuàng)建和使用字典
1、字典創(chuàng)建
(1)字典由鍵及其對應的值組成,其中鍵和值之間由冒號(:)分開,且鍵和值都用上單引號(’)引起來,這種鍵值對被稱為項,第一項和第二項之間由逗號(,)隔開。如下所示:
phonebook={‘Jane’:‘123’,‘Danny’:‘2321’,‘Ming’:‘3232’}
(2)字典的創(chuàng)建除了上面一種方式,還可以使用dict函數(shù)來創(chuàng)建。例如:
>>> obje=[('name','Danny'),('age','12')]
>>> d=dict(obje)
>>> d
{'name': 'Danny', 'age': '12'}
2、字典操作函數(shù)
(1)獲取字典鍵值個數(shù)
>>> len(d)
2
(2)d[k]返回與鍵k相關(guān)聯(lián)的值
>>> d['name']
'Danny'
(3)d[k]=v將值v關(guān)聯(lián)到鍵k
>>> d['age']=19
>>> d
{'name': 'Danny', 'age': 19}
(4)k in d 檢查字典d是否包含鍵為k的項
>>> 'name' in d
True
(5)del d[k]刪除鍵為k的項
>>> del d['age']
>>> d
{'name': 'Danny'}
(6)方法clear() 刪除字典中的所有項
>>> d
{'name': 'Danny'}
>>> d.clear()
>>> d
{}
(7)方法copy() 返回一個新的字典(但是這是淺拷貝,因為值本身是原件,而非副本)
>>> x = {'username': 'admin', 'machines': ['foo', 'bar', 'baz']}
>>> y = x.copy()
>>> y['username'] = 'mlh'
>>> y['machines'].remove('bar')
>>> y
{'username': 'mlh', 'machines': ['foo', 'baz']}
>>> x
{'username': 'admin', 'machines': ['foo', 'baz']}
(8)方法fromkeys 創(chuàng)建一個新的字典,其中包含指定的鍵,且每個鍵值對應的是none
>>> x
{'username': 'admin', 'machines': ['foo', 'baz']}
>>> x.fromkeys(['pxj','zt'])
{'pxj': None, 'zt': None}
(9)方法get,訪問字典中的鍵對應的值,如果沒有則返回None
>>> x
{'username': 'admin', 'machines': ['foo', 'baz']}
>>> print(x.get('pxj'))
None
(10)方法pop,獲取指定鍵相關(guān)聯(lián)的值,并將該鍵值對刪除
>>> x
{'username': 'admin', 'machines': ['foo', 'baz']}
>>> x.pop('username')
'admin'
>>> x
{'machines': ['foo', 'baz']}
(11)方法popitem,隨機的彈出一個鍵值對,并在字典中刪除
>>> y
{'username': 'mlh', 'machines': ['foo', 'baz'], 'hello': 'word', 'hao': 'de'}
>>> y.popitem()
('hao', 'de')
>>> y
{'username': 'mlh', 'machines': ['foo', 'baz'], 'hello': 'word'}
感謝各位的閱讀!關(guān)于“Python中字典是什么意思”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
名稱欄目:Python中字典是什么意思
文章起源:http://bm7419.com/article42/pcgcec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營銷型網(wǎng)站建設(shè)、網(wǎng)站內(nèi)鏈、企業(yè)網(wǎng)站制作、品牌網(wǎng)站制作、標簽優(yōu)化、小程序開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)