一,元祖(tuple)
1.元祖是不能修改的,通常寫成圓括號(hào)中的一系列項(xiàng),位置有序,固定長度
2.實(shí)際上元祖支持字符串和列表的一般序列操作,“+”,“*”以及分片操作應(yīng)用于元祖時(shí)會(huì)返回新的元祖
print((1,2)+(3,4))>>>>(1,2,3,4) print((1,2)*4)>>>>(1,2,1,2,1,2,1,2) T=(1,2,3,4) print(T【0】,T【1:3】)>>>>(1,(2,3))
3.元祖不提供字符串,列表和字典的方法,入股你相對(duì)元祖進(jìn)行排序,通常先得把它轉(zhuǎn)換成列表才能獲得使用排序方法的調(diào)用
T=(“z”,"b"."c") tem= list(T) tem.sort() print(tem)>>>> ["b","c","z"] T=tuple(tem) print(T) >>>>("b","c","z")
但是元祖內(nèi)部的列表是可以像往常那樣修改的
T=(1,[2,3],4) T[1].[0] ="ABC" print(T)>>>>>(1,["ABC",3],4)
二.字典(dict)
1.字典是無序的,即你每次查詢的結(jié)果數(shù)據(jù)排序是不一定的,因?yàn)樗鼤r(shí)key-value類型的數(shù)據(jù),不需通過下標(biāo)索引
2.對(duì)字典的操作:
D1={} #表示空字典 D2={“spam”:1,"app":2}#兩項(xiàng)目字典 D3={"food":{"spam":1,"egg":2}}#嵌套 D2["app"]#通過鍵進(jìn)行查找 D3["food"]["spam"] "egg" in D3 #判斷egg是否存在在D3中,存在則返回True D2.keys()#查詢key值 D2.values()#查詢value值 D2[key]=44#表示新增或者修改,當(dāng)字典中不存在這個(gè)key則新增,存在則是修改 del D2[key]#刪除
D2 = {"egg",1,"app",2} print(D2["app"]) >>>>>>>2 print(D2) >>>>>>>{"egg",1,"app",2} len(D2) >>>>>>>2#返回的時(shí)keys的列表的長度 合并的方法: D2 = {"egg",1,"app",2} D3 = {"egg",1,"app",2} D2.update(D3) print(D2) >>>>>>>{"egg",1,"app",2,"egg",1,"app",2} pop刪除的方法:能夠刪除字典一個(gè)鍵并返回它的值 D2 = {"egg",1,"app",2} D2.pop(“egg”) >>>>>>>>1 print(D2) >>>>>>>>{"app",2} 另一種創(chuàng)建方法:條件是所有的key的值都是一樣的 dict.fromkeys(["a","b"],0) >>>>>>>>>{"a":0,"b":0}
三.集合(set)
集合是一個(gè)無序的,不重復(fù)的數(shù)據(jù)重合的。主要作用是用于
(1)去重;把一個(gè)列表變成集合,自動(dòng)去除重復(fù)
(2)關(guān)系測試;測試兩組數(shù)據(jù)之前的交集,并集等關(guān)系
相關(guān)操作
s1= set([1,2,3,4,5,6,7]) s2 = set([2,5,4,6,3,9]) print(s1.intersection(s2))#表示取交集 >>>>>>>>{2,4,5,6,3} print(s1.union(s2))#表示取并集 >>>>>>>>{1,2,3,4,5,6,7,9} print(s1.difference(s2))#表示差集 >>>>>>>>{7,9} print(s1.isdisjiont(s2))#表示s與s2是否有交集 >>>>>>>>True s1.add(10)#添加1個(gè)項(xiàng) s1.update([8,9,10])#添加多個(gè)項(xiàng) s1.remove(1)#刪除一項(xiàng),值為1(指定刪除哪個(gè),沒有指定會(huì)報(bào)錯(cuò)) s1.pop()#隨機(jī)刪除一個(gè)數(shù)
以上這篇基于python元祖與字典與集合的粗淺認(rèn)識(shí)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
