目錄
目錄
一. 元組(tuple)
1.1 元組的建立
1.2 元組的訪問
1.3 元組的排序
1.4 推導式生成元組
二. 字典
2.1 字典的建立
2.2 字典的訪問
2.3 字典的常用方法
2.4 字典的新增、修改、刪除
三. 集合
3.1. 集合的常用操作
①元組屬於不可變數列,列表屬於可變數列。即建立後即不可修改。元組沒有增加元素、修改元素、刪除元素的方法
②但是訪問元素、拼接元素、切片操作、運算操作、計數操作還是可以使用的。
③元組的訪問和處理速度比列表快
④與整數和字串一樣,元組可以作為字典的鍵,但是列表則不可以
① ()建立:a = (1,2,3) 或者是省略(),直接a = 1,2,3 都可以建立元組物件
注意:如果元組物件只有乙個,建立時要在後面加, a = (1,),否則直譯器會把a作為乙個整數來處理
②通過tuple()建立:a = tuple(可迭代物件) a=tuple('a,b,c') a=tuple(range(3)) a=tuple([a,b,c])
元組的訪問與列表的訪問基本一致,可通過下標、切片(開始下標、結束下標、步長)等方式進行訪問
可以通過sorted()函式完成元組的排序,sorted方法生成的總是列表物件
max()、min()、sum()等方法均可使用
可以通過推導式生成元組的方式:a = (x * 2 for x in range(5))
tuple(a) 的值就是(0,2,4,6,8)
a首先是生成的生成器物件,該物件只能通過指標訪問一次,然後通過tuple函式轉換成元組物件
生成器物件還可以通過__next__()函式,乙個乙個的通過指標完成訪問,注意,是兩個下劃線
a.__next__(),此時是訪問a中的第乙個指標位置元素:0
a.__next__(),此時是訪問a中的第二個指標位置元素:2
以此類推
簡介:①:字典是鍵值對的無序可變序列,kv形式的序列,通過鍵找值
①. 通過{}、dict()來建立字段物件,dict()結合列表元組的方式建立字典
a =
b = dict(name="張三", age=18, store=[1, 2, 3])
# dict()結合列表元組的方式建立字典, 列表中時元組,每乙個元組代表乙個鍵值對
c = dict([('name', '張三'), ('age', 18), ("store", [1,2,3])])
②.通過zip方式建立字典物件,將兩個列表打包成鍵值對
k = ["name", "age", "store"]
v = ["張三", 18, [1, 2, 3]]
kv = dict(zip(k, v))
③. 通過fromkeys建立值為空的字典
d = dict.fromkeys(["name", "age", "store"])
a =
# 1. 通過訪問,如果鍵不存在,則會丟擲異常
print(a["name"])
print(a["namesss"]) #丟擲異常
# 2. 通過get()方法獲取鍵值,如果鍵不存在,則返回none,或者指定的返回字串,推薦使用
print(a.get("name"))
print(a.get("namesss", "不存在返回的字串")) #返回值:不存在返回的字串
a =
# 1. 列出所有鍵值對
a.items()
# 2. 列出所有鍵/值
a.keys()
a.values()
# 3. 獲取字典物件鍵值對的長度
len(a)
# 4. 檢測乙個鍵是否存在於字典物件中,返回true/false
"name" in a
dict_a =
# 1.直接新增,如果鍵不存在,則直接新增,如果鍵已經存在,則直接覆蓋
dict_a["address"] = "杭州市"
print(dict_a)
# 2. update(),將新字典中的鍵值對全部新增到舊字典的鍵值對中,如果存在,直接覆蓋
b =
dict_a.update(b)
# 此時dict_a=
# 3.字典的刪除
# del(dict_a["age"]) 可以直接刪除指定的鍵
# b = pop("***") 將指定的鍵刪除,並返回該鍵的值給b
# dict_a.clean() 將該字典的所有鍵值對清空
# 4.隨機刪除popitem()方法,因為字典是無序的,所以呼叫該方法時,會隨機刪除鍵值對,並返回鍵的值
print(dict_a.popitem())
# 5.序列解包:類似於迭代器的意思,將元組、列表、字典通過簡易寫法完成複製,可以方便的對多個變數賦值
print(dict_a)
a, b, c = (1, 2, 3)
d, e, f = [4, 5, 6]
# 賦值字典的所有鍵,字典的序列解包必須要與字典的值個數一致,否則就會報錯
h, i, j, k, l = dict_a
# 賦值字典的值
h, i, j, k, l = dict_a.values()
# # 賦值字典的鍵值,返回值為元組
h, i, j, k, l = dict_a.items()
集合的底層實現就是字典,只有字典的鍵物件,並且是不能重複的唯一值
# 1.使用{}建立,使用add()新增元素
set_a =
# 因為集合不能重複,所以再add乙個1,該集合的值不會改變
set_a.add(1)
# 2.使用set()函式,將列表、元組等可迭代物件轉為集合物件
list_a = ["a", "b", "c"]
set_b = set(list_a)
# 3. remove()刪除指定元素,clean()清空集合
set_a.remove(1)
set_b.clear()
# 4.集合的相關操作,交集並集差集
a =
b =
# 並集,結果為
a | b
a.union(b)
# 交集,結果為
a & b
a.intersection(b)
# 差集,結果為
a - b
a.difference(b)
Python列表list與元組tuple
列表與元組都同為存放有序專案的資料結構,最大的區別在於 tup1 physics chemistry 1997,2000 tup2 1,2,3,4,5 tup3 a b c d 從 可以看出,其實元組的建立與圓括號無關,最重要的是逗號,這個也是逗號在python的作用之一,元組型別的轉換 tu ab...
python 元組tuple與列表list的區別
使用help可檢視到tuple list的內建屬性區別 t 1,2,s1 l 1,2,s1 不可變列表 這一說法,從屬性中可以看出,list中與增減改元素的屬性,tuple都沒有。元組的內建屬性 t.count value integer return number of occurrences o...
Python基礎 tuple元組
前面看過了list列表的特性以及通用操作和常用操作,今天我們來看一下不可變序列中的tuple元組,與list列表最大的不同在於,tuple元組不支援原位改變 接下來我們通過一段 來測試一下tuple元組的特性以及通用操作 異質 乙個tuple元組中可以包含不同型別的物件 數值型 字元型 元組 列表 ...