列表璃搜、字典、元組盒刚、集合

一腺劣、列表

1绿贞、定義“在【】內(nèi)因块,用逗號分隔開多個任意數(shù)據(jù)類型的值

? ? ? x1 = [1,"a",[1,2]]? ? #本質(zhì)x1 = list([1,"a",[1,2]])

2、類型轉(zhuǎn)換

? ? ? 但凡能被for循環(huán)遍歷的數(shù)據(jù)類型都可以傳給list()轉(zhuǎn)換成列表類型籍铁,list()會跟for循環(huán)一樣遍歷出數(shù)據(jù)

? ? ? list("wdad")? ? #結(jié)果:【"w","d","a","d"】

? ? ? list([1,2,3])? ? #結(jié)果: 【1涡上,2,3】

? ? ? list({"name:","jason","age":18})? ? #結(jié)果:【"name","age"】

3拒名、使用

3.1按索引存取值(正向存取+反向存确岳ⅰ),即可存也可取

? ? ? 正向仍鱿浴(從左往右)

l = ["egon","tony","jason"]

print(l(0))

? ? ? ? 反向妊慵选(負號表示從右往左)

? ? ? l [-1]

? ? ? ? 對于list來說,即可以按照索引取值同云,又可以按照索引修改指定位置的值糖权,但如果索引不存在則報錯

l =? ["egon","tony","jason"]

l [1] = "Anna"

"egon" "Anna" "jason"

? 3.2切片(顧頭不顧尾冗恨,步長)

? ? ? ? 顧頭不顧尾咖为,取出索引為0到3的元素

l = ["egon",34,"tom","jason"]

print(l[0:3])

? ? ? ? 步長:0:3:2泡嘴,第三個參數(shù)2代表步長疾瓮,會從0開始态兴,每次累加一個2即可岖瑰,所以會取出索引0杀怠、2的元素

l = ["egon",34,"tom","jason"]

print(l[0:3:2])

3.3長度

>>>len(l)

3.4成員運算in和not in

>>>"egon" in l

True

>>>"XXX" not in l

True

3.5添加

? ? ? append()列表尾部的追加元素

>>> l1 = ["a","b","c"]

>>>l1.append("d")

>>>l1

["a","b","c","d"]

? ? extend()一次性在列表尾部添加多個元素

>>>l1 = ["a","b","c"]

>>>l1.extend("a,b,c")

["a","b","c","a","b","c"]


? ? ? insert()在指定位置插

>>>l = ["egon",34,"tom","jason"]

>>>l.insert(0,18)

>>>print(l)

[18, 'egon', 34, 'tom', 'jason']

3.6刪除:

l = ["egon",34,"tom","jason"]

del l[1]? ? ? #刪除的元素為1排龄,也可直接刪除整個列表阀坏,直接del + 列表名即可

print(l)

['egon', 'tom', 'jason']

pop()默認刪除列表最后一個元素如暖,并將刪除的值返回括號內(nèi)可以通過加索引值來指定刪除元素

l = ["egon",34,"tom","jason"]

res=l.pop()

print(l)

['egon', 34, 'tom']

remove()括號內(nèi)指定刪除哪個元素,沒有返回值

l = ["egon",34,"tom","jason"]

res=l.remove(34)

print(l)

['egon', 'tom', 'jason']

3.7? reverse()返轉(zhuǎn)列表內(nèi)元素順序

l = ["egon",34,"tom","jason"]

l.reverse()

print(l)

['jason', 'tom', 34, 'egon']

3.8 sort()給列表內(nèi)所有元素排序

1忌堂、排序時列表元素之間必須是相同數(shù)據(jù)類型装处,不可混搭,否則報錯

>>> l = [11,22,3,42,7,55]

>>> l.sort()

>>> l

[3, 7, 11, 22, 42, 55]? # 默認從小到大排序

>>> l = [11,22,3,42,7,55]

>>> l.sort(reverse=True)? # reverse用來指定是否跌倒排序,默認為False

>>> l

[55, 42, 22, 11, 7, 3]

2妄迁、了解知識:我們常用的數(shù)字類型比較大小寝蹈,但其實,字符串登淘、列表等都可以比較大小箫老,原理相同,都是依次比較

3.9 循環(huán)

>>>l = ["egon",34,"tom","jason"]

>>>for i in l:

? ? >>print(i)

egon

34

tom

jason

二黔州、元組

1耍鬓、作用:元組與列表類似,也是可以存多個任意類型的元素流妻,不同之處在于元組的元素不能修改牲蜀,即元組相當于不可變的

? ? ? ? ? ? ? ? 列表,用于記錄多個固定不允許修改的值绅这,單純用于取涣达。

2、定義方式:在()內(nèi)用逗號分隔開多個任意類型的值

>>>countries = ("中國","美國","英國")? #本質(zhì)countries = tuple("中國","美國","英國")

#強調(diào):如果元組內(nèi)只有一個值证薇,則必須加一個逗號度苔,否則()就只是包含的意思而非定義元組

3、類型轉(zhuǎn)換:但凡能被for循環(huán)的遍歷的數(shù)據(jù)類型都可以傳給tuple()轉(zhuǎn)換成元組類型

>>> tuple('wdad') # 結(jié)果:('w', 'd', 'a', 'd')

>>> tuple([1,2,3]) # 結(jié)果:(1, 2, 3)

>>> tuple({"name":"jason","age":18}) # 結(jié)果:('name', 'age')

>>> tuple((1,2,3)) # 結(jié)果:(1, 2, 3)

>>> tuple({1,2,3,4}) # 結(jié)果:(1, 2, 3, 4)

#tuple()會跟for循環(huán)一樣遍歷出數(shù)據(jù)類型中包含的每一個元素然后放到元組中

三浑度、字典

1寇窑、定義:在{}內(nèi)用逗號分隔開多個元素,每一個元素都是key:value的形式箩张,其中value可以是任意類型甩骏,而key則必須

是不可變類型,通常key應該是str類型先慷,因為str類型對value有描述的功能

info={'name':'tony','age':18,'sex':'male'} #本質(zhì)info=dict({....})

# 也可以這么定義字典

info=dict(name='tony',age=18,sex='male') # info={'age': 18, 'sex': 'male', 'name': 'tony'}

2饮笛、類型轉(zhuǎn)換

>>> info=dict([['name','tony'],('age',18)])

>>> info

{'age': 18, 'name': 'tony'}

fromkeys會從元組中取出每個值當做key,然后與None組成key:value放到字典中

>>> {}.fromkeys(('name','age','sex'),None)?

{'age': None, 'sex': None, 'name': None}

3熟掂、使用

? ? 3.1按key存取值缎浇,可存可取

取:

? ? dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? ? ? ? print(dic["hobbies"][1])

basketball

對于賦值操作赴肚,如果key原先不存在于字典素跺,則會新增key:value

對于賦值操作,如果key原先存在于字典誉券,則會修改對應value的值

? 3.2 長度len

? ? dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? ? print(len(dic))

? 3.3 成員運算 in 和 not in

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? ? ? print("name" in dic)

? 3.4刪除

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? ? print(dic.pop("name"))? ? #返回刪除的值 egon

? 3.5 鍵keys()

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? ? dic.keys()

? ? ? ? print(dic)

? ? ? ? 值values()

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? dic.values()

? ? ? ? 鍵值對items()

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

? ? ? dic.items()

? 3.6 循環(huán)

默認遍歷的是字典的key

for key in dic:

? ? ? ? print(key)

只遍在key

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

for key in dic.keys():

? ? ? ? ? print(key)

只遍歷value

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

for value in dic.values():

? ? ? ? print(value)

遍歷key與value

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

for key in dic.items():

? ? ? ? print(key)

4指厌、get()

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

print(dic.get("name"))

#key存在,則獲取key對應的value值

#key不存 在踊跟,可以設(shè)置默認返回的值

5踩验、pop()? 刪除指定的key對應的鍵對值鸥诽,并返回值

6、popitem() 隨機刪除一組鍵值對箕憾,并將刪除的鍵值放到元組內(nèi)返回

7牡借、update() 用新字典更新舊字典,有則修改袭异,無則添加

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

print(dic.update({"name":"Anna"}))

8钠龙、setdafault()? #key不存在則新增鍵值對,并將新增的value返回

dic={"name":"egon","age":18,"hobbies":["play game","basketball"]}

res = dic.setdefault("k1",789)

print(res)

四御铃、集合

1碴里、作用:集合、list上真、tuple咬腋、dict、一樣都可以存放多個值睡互,但是集合主要用于:去重根竿、關(guān)系運算

2、定義:在{}內(nèi)用逗號分隔開多個元素湃缎,集合具備以下三個特點:

1犀填、每個元素必須是不可變類型

2蠢壹、集合內(nèi)沒有重復的元素

3嗓违、集合內(nèi)元素無序

3、類型轉(zhuǎn)換:但凡能被for循環(huán)的遍歷的數(shù)據(jù)類型图贸,不可變類型都可以傳給set()轉(zhuǎn)換成集合類型

4蹂季、使用

1、求兩個用戶所有的好友(重復好友只留一個)

friends1 = {"a","b","c","d"}

friends2 = {"c","d",'e',"b"}

print(friends1|friends2)

2疏日、交集(&)求兩個用戶的共同好友

3偿洁、差集(-)

4、對稱差集(^)求兩個兩戶獨有的好友們(即去掉共有的好友)

5沟优、值是否相等(==)

五涕滋、去重

集合去重復有局限性

1、只能什對不可變類型

2挠阁、集合本身是無序的宾肺,去重之后無法保留原來的順序

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市侵俗,隨后出現(xiàn)的幾起案子锨用,更是在濱河造成了極大的恐慌,老刑警劉巖隘谣,帶你破解...
    沈念sama閱讀 218,204評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件增拥,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機掌栅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,091評論 3 395
  • 文/潘曉璐 我一進店門秩仆,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人猾封,你說我怎么就攤上這事逗概。” “怎么了忘衍?”我有些...
    開封第一講書人閱讀 164,548評論 0 354
  • 文/不壞的土叔 我叫張陵逾苫,是天一觀的道長。 經(jīng)常有香客問我枚钓,道長铅搓,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,657評論 1 293
  • 正文 為了忘掉前任搀捷,我火速辦了婚禮星掰,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘嫩舟。我一直安慰自己氢烘,他們只是感情好,可當我...
    茶點故事閱讀 67,689評論 6 392
  • 文/花漫 我一把揭開白布家厌。 她就那樣靜靜地躺著播玖,像睡著了一般。 火紅的嫁衣襯著肌膚如雪饭于。 梳的紋絲不亂的頭發(fā)上蜀踏,一...
    開封第一講書人閱讀 51,554評論 1 305
  • 那天,我揣著相機與錄音掰吕,去河邊找鬼果覆。 笑死,一個胖子當著我的面吹牛殖熟,可吹牛的內(nèi)容都是我干的局待。 我是一名探鬼主播,決...
    沈念sama閱讀 40,302評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼菱属,長吁一口氣:“原來是場噩夢啊……” “哼钳榨!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起照皆,我...
    開封第一講書人閱讀 39,216評論 0 276
  • 序言:老撾萬榮一對情侶失蹤重绷,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后膜毁,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體昭卓,經(jīng)...
    沈念sama閱讀 45,661評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡愤钾,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,851評論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了候醒。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片能颁。...
    茶點故事閱讀 39,977評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖倒淫,靈堂內(nèi)的尸體忽然破棺而出伙菊,到底是詐尸還是另有隱情,我是刑警寧澤敌土,帶...
    沈念sama閱讀 35,697評論 5 347
  • 正文 年R本政府宣布镜硕,位于F島的核電站,受9級特大地震影響返干,放射性物質(zhì)發(fā)生泄漏兴枯。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,306評論 3 330
  • 文/蒙蒙 一矩欠、第九天 我趴在偏房一處隱蔽的房頂上張望财剖。 院中可真熱鬧,春花似錦癌淮、人聲如沸躺坟。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,898評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽咪橙。三九已至,卻和暖如春栓袖,著一層夾襖步出監(jiān)牢的瞬間匣摘,已是汗流浹背店诗。 一陣腳步聲響...
    開封第一講書人閱讀 33,019評論 1 270
  • 我被黑心中介騙來泰國打工裹刮, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人庞瘸。 一個月前我還...
    沈念sama閱讀 48,138評論 3 370
  • 正文 我出身青樓捧弃,卻偏偏與公主長得像,于是被迫代替她去往敵國和親擦囊。 傳聞我的和親對象是個殘疾皇子违霞,可洞房花燭夜當晚...
    茶點故事閱讀 44,927評論 2 355

推薦閱讀更多精彩內(nèi)容