6.組合數(shù)據(jù)類型

集合set

集合是多個(gè)元素的無(wú)序組合.

  • 集合用大括號(hào){}表示,元素間利用逗號(hào)分隔
  • 建立集合類型用{}或set()
  • 建立空集合類型,必須使用set()

集合操作符

操作符及應(yīng)用 描述
S|T 返回一個(gè)新集合,包括st中的所有元素
S-T 返回一個(gè)新集合,包括在集合s中但不在t中的元素
S&T 返回一個(gè)新集合包括同時(shí)在s和t中的元素
S^T 返回一個(gè)新集合,包括S和T中的非相同元素
S<=T或S<T 返回True/False,判斷S和T的子集關(guān)系
S>=T或S>T 返回True/False,判斷S和T的包含關(guān)系

集合處理方法

操作函數(shù)或方法 描述
S.add 向集合中添加元素
S.discard 移除集合中的一個(gè)元素(如果元素不存在,不報(bào)錯(cuò))
S.remove 移除集合中的一個(gè)元素(如果元素不存在交煞,會(huì)引發(fā) KeyError)
S.clear 移除集合中所有元素
S.pop 隨機(jī)返回集合S的一個(gè)元素,更新S(如果集合為空喊巍,會(huì)引發(fā) KeyError)
S.copy 返回集合S的一個(gè)副本
len(S) 返回集合S的元素個(gè)數(shù)
x in S 判斷集合S中是否有元素x,是返回True否則返回False
x not in S 判斷集合S中是否有元素x,是返回False否則返回True
set(x) 將其他類型變量x轉(zhuǎn)變?yōu)榧项愋?/td>

數(shù)據(jù)去重,典型用法,利用數(shù)組內(nèi)元素不可重復(fù).

序列sequence

  • 序列可以包含一個(gè)或多個(gè)元素,也可以沒(méi)有任何元素.
  • 我們之前所說(shuō)的基本數(shù)據(jù)類型,都可以作為序列的元素.技矮。
  • 序列有兩種:tuple(元組) 和 list (表)

序列操作符

操作符及應(yīng)用 描述
x in S 如果x是序列S的元素,返回True否則返回False
x not in S 如果x是序列S的元素,返回False否則返回True
s + t 連接兩個(gè)序列s和t
SN或NS 講序列s復(fù)制n次
S[i] 索引,返回序列中的第i個(gè)元素
S[i:j]或S[i;j;k] 切片,返回s序列中第i到j(luò)步長(zhǎng)為k的元素子序列

序列處理方法

函數(shù)和方法 描述
len(S) 返回序列S的長(zhǎng)度
min(s) 返回序列s的最小元素,s中元素需要可比較
max(s) 返回序列s的最大元素,s中元素需要可比較
s.index(x)或s.index(x,i,j) 返回序列s從i到j(luò)中第一次出現(xiàn)元素x的位置
s.count(x) 返回序列中x出現(xiàn)的總次數(shù)

元組是序列類型的一種擴(kuò)展.
使用小括號(hào)()或tuple()創(chuàng)建,元素間用逗號(hào)分隔.
可以使用或不使用小括號(hào).
tuple元素不可變办陷,list元素可變.
字符串是一種tuple.
數(shù)據(jù)保護(hù)將數(shù)據(jù)轉(zhuǎn)換為元組類型.

字符串是一種特殊的元組琅轧,因此可以執(zhí)行元組的相關(guān)操作析孽。

str = 'abcdef'
print(str[2:4])
  • 列表是一種序列類型,被創(chuàng)建后可以隨意修改
  • 使用方括號(hào)[]或list()創(chuàng)建,元素間用逗號(hào)分隔
  • 可以使用或不使用小括號(hào)
函數(shù)或方法 描述
ls[i]=x 替換列表ls第i個(gè)元素為x
ls[i:j:k]=lt 用列表lt替換ls切片后所對(duì)應(yīng)元素子列表
del ls[i] 刪除列表ls中第i元素
del ls[i:j:k] 刪除列表ls中從第i到第j步長(zhǎng)為k的元素
ls+=lt 更新列表ls,將列表lt元素增加到列表ls中
ls*=n 更新列表ls,將元素重復(fù)n次

列表類型操作類型和方法

函數(shù)或方法 描述
ls.append(x) 在列表最后添加元素x
ls.clear() 移除列表中所有元素
ls.copy() 生成一個(gè)新列表,賦值ls中所有元素
is.insert(i,x) 在列表ls第i位增加元素x
ls.pop(i) 將列表ls中第i位置元素取出并刪除
ls.remove(x) 將列表ls中出現(xiàn)的第一個(gè)x元素刪除
ls.reverse() 將列表ls中元素反轉(zhuǎn)

字典

映射映射是一種鍵(索引)和值(數(shù)據(jù))的對(duì)應(yīng).

  • 字典類型是映射的體現(xiàn).
  • 鍵值對(duì):鍵是數(shù)據(jù)索引的擴(kuò)展.
  • 字典是鍵值對(duì)的集合,鍵值對(duì)之間無(wú)序.
  • 字典的每個(gè)鍵值(key=>value)對(duì)用冒號(hào)(:)分割,每個(gè)對(duì)之間用(,)分割,整個(gè)字典包括在花括號(hào){}中.
    <字典變量> = {<鍵1>:<值1>,<鍵2>:<值2>...<鍵n>:<值n>}
    鍵必須是唯一的搭伤,但值不必.
>>>d = {"中國(guó)":"北京","美國(guó)":"華盛頓","法國(guó)":"巴黎"}
>>>d
{'中國(guó)':'北京','美國(guó)':'華盛頓','法國(guó)':'巴黎'}
>>>d["中國(guó)"]
'北京'
>>>de = {} ; type(de)
<class 'dict'>
函數(shù)或方法 描述
del d[k] 刪除字典d中鍵k對(duì)應(yīng)的數(shù)據(jù)值
k in d 判斷鍵k是否在字典d中,如果在返回True,否則False
d.keys() 返回字典中所有的鍵信息
d.values() 返回字典中所有的值信息
d.items() 返回字典中所有的鍵值對(duì)信息

列表類型操作函數(shù)和方法

函數(shù)或方法 描述
d.get<k.default> 鍵k存在,則返回相應(yīng)值,不在則返回<default>值
d.pop<k.default> 鍵k存在,則取出相應(yīng)值,不在則返回<default>值
d.popitem() 隨機(jī)從字典中取出一個(gè)鍵值對(duì),以元組形式返回
d.clear() 刪除所有的鍵值對(duì)
len(d) 返回字典d中元素的個(gè)數(shù)

對(duì)于List:

classmates = ['Michael', 'Bob', 'Tracy']
classmates.append('Adam')    //添加在末尾,沒(méi)有add()方法
classmates.insert(1, 'Jack') //在指定位置添加
classmates.pop(1)            //在知道位置刪除袜瞬,參數(shù)是索引
del classmate[1]             //刪除第二個(gè)元素
classmates.remove('Bob')     //參數(shù)是元素怜俐,刪除第一個(gè)與Bob值匹配的元素,之后又相同元素不會(huì)刪除

對(duì)于dict:

d = {'a': 'A', 'b': 'B'}
del d['a']
d.pop('a')    //參數(shù)是key邓尤,沒(méi)有remove()方法
d['c']='C';   //插入直接賦值即可

對(duì)于set:

s={1,2,3}       //set對(duì)象的創(chuàng)建也可以是s=set(iterable)
s.add(8)        //添加8到末尾   沒(méi)有append()方法
s.remove(8)     //參數(shù)是元素拍鲤,不是索引    刪除8   
s.pop()         //刪除最后一個(gè)元素

對(duì)于tuple:
由于tuple一旦初始化就不能修改,所以不能插入和刪除.

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市汞扎,隨后出現(xiàn)的幾起案子季稳,更是在濱河造成了極大的恐慌,老刑警劉巖澈魄,帶你破解...
    沈念sama閱讀 218,525評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件景鼠,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡痹扇,警方通過(guò)查閱死者的電腦和手機(jī)铛漓,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)鲫构,“玉大人浓恶,你說(shuō)我怎么就攤上這事〗岜浚” “怎么了包晰?”我有些...
    開(kāi)封第一講書(shū)人閱讀 164,862評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵湿镀,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我伐憾,道長(zhǎng)勉痴,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,728評(píng)論 1 294
  • 正文 為了忘掉前任塞耕,我火速辦了婚禮蚀腿,結(jié)果婚禮上嘴瓤,老公的妹妹穿的比我還像新娘扫外。我一直安慰自己,他們只是感情好廓脆,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,743評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布筛谚。 她就那樣靜靜地躺著,像睡著了一般停忿。 火紅的嫁衣襯著肌膚如雪驾讲。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,590評(píng)論 1 305
  • 那天席赂,我揣著相機(jī)與錄音吮铭,去河邊找鬼。 笑死颅停,一個(gè)胖子當(dāng)著我的面吹牛谓晌,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播癞揉,決...
    沈念sama閱讀 40,330評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼纸肉,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了喊熟?” 一聲冷哼從身側(cè)響起柏肪,我...
    開(kāi)封第一講書(shū)人閱讀 39,244評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎芥牌,沒(méi)想到半個(gè)月后烦味,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,693評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡壁拉,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,885評(píng)論 3 336
  • 正文 我和宋清朗相戀三年谬俄,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片扇商。...
    茶點(diǎn)故事閱讀 40,001評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡凤瘦,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出案铺,到底是詐尸還是另有隱情蔬芥,我是刑警寧澤,帶...
    沈念sama閱讀 35,723評(píng)論 5 346
  • 正文 年R本政府宣布,位于F島的核電站笔诵,受9級(jí)特大地震影響返吻,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜乎婿,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,343評(píng)論 3 330
  • 文/蒙蒙 一测僵、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谢翎,春花似錦捍靠、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,919評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至褒侧,卻和暖如春良风,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背闷供。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,042評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工烟央, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人歪脏。 一個(gè)月前我還...
    沈念sama閱讀 48,191評(píng)論 3 370
  • 正文 我出身青樓疑俭,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親唾糯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子怠硼,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,955評(píng)論 2 355

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

  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)移怯,斷路器香璃,智...
    卡卡羅2017閱讀 134,657評(píng)論 18 139
  • 〇、前言 本文共108張圖舟误,流量黨請(qǐng)慎重葡秒! 歷時(shí)1個(gè)半月,我把自己學(xué)習(xí)Python基礎(chǔ)知識(shí)的框架詳細(xì)梳理了一遍嵌溢。 ...
    Raxxie閱讀 18,957評(píng)論 17 410
  • 第六章:數(shù)字 第七章:序列眯牧,列表,元組 1.序列 序列類型有著相同的訪問(wèn)模式:它的每一個(gè)元素可以通過(guò)指定一個(gè)偏移量...
    m風(fēng)滿樓閱讀 898評(píng)論 0 2
  • 民宿設(shè)計(jì)最近是很火一個(gè)行業(yè)赖草,民宿最精髓就是融入環(huán)境学少。
    金保室內(nèi)設(shè)計(jì)閱讀 519評(píng)論 0 0
  • 冬至到,吃水餃秧骑, 我搟皮兒版确,奶奶包扣囊, 頭碗水餃給爺爺, ...
    周雅菲閱讀 450評(píng)論 0 0