久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > python 的內(nèi)置字典

python 的內(nèi)置字典

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-11-08 05:10:01 1699391401

python內(nèi)置了字典:dict(key-value存儲(chǔ)方式)的支持,dict全稱dictionary,在其他語(yǔ)言中也稱為map,使用鍵-值(key-value)存儲(chǔ),具有極快的查找速度。>>>d={'Michael':95,'Bob':75,'Tracy':85}

把數(shù)據(jù)放入dict的方法,除了初始化時(shí)指定外,還可以通過(guò)key放入(多次對(duì)一個(gè)key放入value,后面的值會(huì)把前面的值沖掉):>>>d['Adam']=67

>>>d['Adam']67

要避免key不存在的錯(cuò)誤,有兩種辦法,一是通過(guò)in判斷key是否存在:>>>'Thomas'ind

False

二是通過(guò)dict提供的get()方法,如果key不存在,可以返回None,或者自己指定的value:

>>>d.get('Thomas')#注意:返回None的時(shí)候Python的交互環(huán)境不顯示結(jié)果。

>>>d.get('Thomas',-1)-1

要?jiǎng)h除一個(gè)key,用pop(key)方法,對(duì)應(yīng)的value也會(huì)從dict中刪除:>>>d.pop('Bob')75

>>>d

{'Michael':95,'Tracy':85}

請(qǐng)務(wù)必注意,dict內(nèi)部存放的順序和key放入的順序是沒有關(guān)系的。dict是用空間來(lái)?yè)Q取時(shí)間的一種方法。

dict的key必須是不可變對(duì)象。在Python中,字符串、整數(shù)等都是不可變的,因此,可以放心地作為key。而list是可變的,就不能作為key。

set和dict類似,也是一組key的集合,但不存儲(chǔ)value。由于key不能重復(fù),所以,在set中,沒有重復(fù)的key。

要?jiǎng)?chuàng)建一個(gè)set,需要提供一個(gè)list作為輸入集合:

>>>s=set([1,2,3])

>>>s

{1,2,3}

注意,傳入的參數(shù)[1,2,3]是一個(gè)list,而顯示的{1,2,3}只是告訴你這個(gè)set內(nèi)部有1,2,3這3個(gè)元素,顯示的順序也不表示set是有序的。

重復(fù)元素在set中自動(dòng)被過(guò)濾:

>>>s=set([1,1,2,2,3,3])

>>>s

{1,2,3}

通過(guò)add(key)方法可以添加元素到set中,可以重復(fù)添加,但不會(huì)有效果。

通過(guò)remove(key)方法可以刪除元素。

set可以看成數(shù)學(xué)意義上的無(wú)序和無(wú)重復(fù)元素的集合,因此,兩個(gè)set可以做數(shù)學(xué)意義上的交集、并集等操作:

>>>s1=set([1,2,3])

>>>s2=set([2,3,4])

>>>s1&s2

{2,3}

>>>s1|s2

{1,2,3,4}

注意:

set和dict的唯一區(qū)別僅在于沒有存儲(chǔ)對(duì)應(yīng)的value,但是,set的原理和dict一樣,所以,同樣不可以放入可變對(duì)象,因?yàn)闊o(wú)法判斷兩個(gè)可變對(duì)象是否相等,也就無(wú)法保證set內(nèi)部“不會(huì)有重復(fù)元素”。

>>>classmates=['Michael','Bob','Tracy']#list用[]定義

>>>classmates=('Michael','Bob','Tracy')#tuple用()定義

>>>d={'Michael':95,'Bob':75,'Tracy':85}#dic用{}來(lái)定義

>>>s=set([1,2,3])#set用()來(lái)定義

以上內(nèi)容為大家介紹了Python增強(qiáng),希望對(duì)大家有所幫助,如果想要了解更多Python相關(guān)知識(shí),請(qǐng)關(guān)注IT培訓(xùn)機(jī)構(gòu):千鋒教育。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT
python中如何分解質(zhì)因數(shù)?

大家知不知道和質(zhì)數(shù)相差一字的質(zhì)因數(shù)是什么呢?其實(shí)質(zhì)因數(shù)就是質(zhì)數(shù),質(zhì)因數(shù)在數(shù)論指能整除給定正整數(shù)的質(zhì)數(shù)。除1外,沒有其他公共質(zhì)數(shù)因子的兩個(gè)...詳情>>

2023-11-08 08:06:25
在python中如何打亂數(shù)據(jù)?

在玩python學(xué)習(xí)機(jī)器時(shí),對(duì)于那種對(duì)隨機(jī)性不太敏感的模型,理論上說(shuō)可以不打亂。但敏感不敏感也跟數(shù)據(jù)量級(jí),復(fù)雜度,算法內(nèi)部計(jì)算機(jī)制都有關(guān),目...詳情>>

2023-11-08 08:02:49
python為什么沒有報(bào)錯(cuò)提示

python中沒有報(bào)錯(cuò)提示的代碼示例:defcount_words(filename):try:withopen(filename)asf_obj:contents=f_obj.read()excep詳情>>

2023-11-08 07:59:13
python中remove與del的區(qū)別是什么?

python中,有很多函數(shù)的作用是一樣的,例如:python中remove與del都會(huì)刪除元素,但是還有有區(qū)別的。本文主要介紹python中remove與del的區(qū)別:de...詳情>>

2023-11-08 07:34:01
Python中如何進(jìn)行字符串比較大小?

在Python中,我們會(huì)經(jīng)常使用到字串符,用于編碼碼字。有的時(shí)候會(huì)需要比較字符串大小。本文主要介紹Python字符串比較大小方法:字符串的比較是比...詳情>>

2023-11-08 07:26:49