day8-元組后频、字典梳庆、集合
一、元組
元組是容器型數(shù)據(jù)類型卑惜;不可變(不支持增膏执、刪、改)露久,有序(支持下標(biāo)操作)
將小括號(hào)作為容器的標(biāo)志更米,多個(gè)元素用逗號(hào)隔開
1.查 — 和列表一樣
元組切片的結(jié)果是元組
2.相關(guān)運(yùn)算 — 和列表一樣
+
*
==
!=
in
not in
len()
max()
min()
sum
tup(序列)
— 將數(shù)據(jù)轉(zhuǎn)換成元組,所有的序列都可以轉(zhuǎn)換成元組
3.元組特有的特性
- 單個(gè)元素的元組:在只有一個(gè)元素的元組中毫痕,元素后必須有逗號(hào)
- 如果一個(gè)元組的值中有多個(gè)元素征峦,元組的括號(hào)可以省略
- 獲取元素,通過讓變量的個(gè)數(shù)和元組中元素的格式保持一致來分別獲取元組中元素的值
- 可以通過在某一個(gè)變量前加
*
來獲取不帶*
的變量獲取完后剩下的元素 - 注意:帶
*
的變量只能有一個(gè)消请,而且這個(gè)變量的結(jié)果是一個(gè)列表
二栏笆、字典
字典是容器型數(shù)據(jù)類型;可變(支持增臊泰、刪蛉加、改),無序(不支持下標(biāo)操作)
字典容器的標(biāo)志是{}
,多個(gè)元素用逗號(hào)隔開
1.字典中的元素
字典中的元素是鍵值對(duì)针饥,以key:value
的形式存在厂抽,而且key和value必須成對(duì)出現(xiàn)
鍵(key) — 不可變的,唯一的(一般使用字符串作為鍵)
值(value) — 沒有要求(和列表的元素一樣)
注意:字典保存數(shù)據(jù)丁眼,真正要儲(chǔ)存的是值筷凤,鍵只是為了對(duì)不同的值進(jìn)行區(qū)分而存在的
2.查 — 獲取字典的值
2.1獲取單個(gè)值
-
字典[key]
— 獲取字典中指定key對(duì)應(yīng)的值如果可以不存在會(huì)報(bào)錯(cuò)
-
字典.get(key)
— 獲取字典中指定key對(duì)應(yīng)的值,如果key不存在不會(huì)報(bào)錯(cuò)而是返回None字典.get(key,默認(rèn)值)
— 獲取字典中指定key對(duì)應(yīng)的值户盯,如果key不存在不會(huì)報(bào)錯(cuò)嵌施,而是返回默認(rèn)值
2.2遍歷
for 變量 in 字典: 循環(huán)體
變量取到的是字典中的所有key
3.字典相關(guān)操作
3.1增/改
增 — 添加鍵值對(duì)饲化; 改 — 修改某個(gè)key對(duì)應(yīng)的值
字典[key] = 值
— 當(dāng)key不存在就是增加莽鸭,當(dāng)key存在就是修改
3.2刪 — 刪除鍵值對(duì)
del 字典[key]
— 刪除字典中指定key對(duì)應(yīng)的鍵值對(duì)
字典.pop(key)
— 取出字典中指定key對(duì)應(yīng)的值
3.3相關(guān)運(yùn)算
- 比較相等:
==
!=
- in / not in
- len(字典)
- dict() — 能轉(zhuǎn)換成字典的數(shù)據(jù)本身必須是一個(gè)序列,序列中的元素必須還是一個(gè)小序列吃靠,小序列中必須有且只有兩個(gè)元素
- 注意:將字典轉(zhuǎn)換成列表硫眨,元組,集合的時(shí)候是將字典的key作為元素
4.字典相關(guān)方法
-
字典.clear()
— 清空字典 -
字典.copy()
— 賦值字典中所有的鍵值對(duì)巢块,產(chǎn)生一個(gè)新字典 -
dict.fromkeys(序列,值)
— 創(chuàng)建一個(gè)新的字典礁阁,將序列中的元素作為key,后面的值作為value族奢,如果沒用給值姥闭,value就為None -
字典.keys()
— 獲取字典中所有的key,以序列的形式返回 -
字典.values()
— 獲取字典中所有的value越走,以序列的形式返回 -
字典.items()
— 同時(shí)獲取字典中所有的key和value棚品,以序列的形式返回,序列中的元素是(key,value)的元組 -
字典.setdefault(key,value)
— 添加鍵值對(duì)廊敌,key不存在的時(shí)候添加铜跑,如果存在不會(huì)修改 -
字典.update(序列)
— 使用序列去更新字典,這個(gè)序列必須是字典或者可以轉(zhuǎn)換成字典的序列
三骡澈、集合
集合是容器型數(shù)據(jù)類型锅纺;可變(支持增、刪)肋殴,無序(不支持下標(biāo)操作)
將{}
作為容器標(biāo)志囤锉,里面多個(gè)元素用逗號(hào)隔開
set()
— 表示空集合
1.集合中的元素
集合中的元素不可變;列表护锤,字典官地,集合不能作為集合的元素
集合中的元素唯一; (自帶去重功能)
2.查
集合不能單獨(dú)取出一個(gè)元素蔽豺,只能通過遍歷一個(gè)一個(gè)的取出所有元素
3.增
集合.add(元素)
— 在集合中添加一個(gè)元素
集合.update(序列)
— 將序列中的元素全部添加到集合中(序列中的元素不可變)
4.刪
集合.remove(元素)
— 刪除集合中指定的元素
5.集合不支持改操作
6.數(shù)學(xué)集合運(yùn)算
- 并集
|
- 交集
&
- 對(duì)稱差集
^
- 差集
-
7.判斷集合的包含關(guān)系
集合1 > 集合2
— 判斷集合1是否包含集合2
集合1 < 集合2
— 判斷集合2是否包含集合1