列表:list=[val1,val2]
1.列表中的每一個元素都是可變的,有序的,可以被查看索引的。
可變意味著可以對每個元素進行增刪改查的操作,列表中的元素可以是Python中的任何對象
(1)創建列表的方法:
? 一.是用方括號[]直接賦值,賦一組以逗號隔開的值;????????????
newlist=[1,2,3] print(newlist) #[1, 2, 3] print(type(newlist)) #查看類型為:
???? 二.是調用list函數進行定義。?????
tup=('q','w','e') print(type(tup)) #change_tup=list(tup) print(type(change_tup))#
(2)增加操作
?? 一.通過append方法,可以將元素添加到列表的末尾??
change_tup.append('f') print(change_tup) #['q', 'w', 'e', 'f']
?? 二.利用insert可以將元素插入到列表的指定位置???
change_tup.insert(0,'a') print(change_tup) #['a', 'q', 'w', 'e', 'f']
? 三.extend將指定序列的元素依次追加到列表的尾部(合并),
?? 不會去重復內容
addlist=['b','c','a'] change_tup.extend(addlist) print(change_tup) #['a', 'e', 'f', 'b', 'c', 'a']
(3)刪除操作
?? 一.pop用于刪除除并返回指定索引處的元素???
change_tup.pop(1) print(change_tup) #['a', 'w', 'e', 'f']
?? 二.remove用于按值刪除元素,它找到第一個符合要求的值
?? 然后將其從列表中刪除
change_tup.remove('w') print(change_tup) #['a', 'e', 'f']
?? 三.del刪除整個列表或列表的數據,del 是 python 內置功能,
?? 不是列表獨有的????????????????????????????
del change_tup[-1] print(change_tup)#['a', 'e', 'f', 'b', 'c']
(4)查找操作
index(元素名):獲取查詢元素在列表中的索引值
count(元素名):統計某元素在列表中出現的次數
if 某元素 in 列表名:判斷某元素是否在列表內
(5)修改操作
list[index] = value
reverse():反轉列表
sort():從原列表上按從小到大排序
sorted(列表名)生成新列表按從小到大進行排序
(6)特殊操作
max(列表名):最大值
min(列表名):最小值???
字典:
dict={key1:val1,key2:val2}
1.字典中的值是可變的,無序的。
2.字典中的數據必須以鍵值對的形式出現
3.鍵不可重復,值可重復
4.字典中鍵(key)是不可變的,為不可變對象,不能進行修改;而值(value)是可以修改的,可以是任何對象。
(1)增加操作
變量名[key]=value 通過 key 添加 value 值,如果 key 存在則覆蓋
setdefault(key,default_value) 指定 key 和 value,如果 key 存在則覆蓋
(2)刪除操作
pop 彈出,返回并刪除指定鍵對應的值
popitem 隨機彈出一個鍵值元組,這里隨機的原因是因為字典無序
clear 清空字典
(3)修改操作
變量名[key]=value 通過 key 添加 value 值,如果 key 存在則覆蓋
update() 傳遞一個字典,如果 key 相同則覆蓋,沒有的 key 則添加
(4)查找操作
keys 返回一個包含字典所有 key 的列表
values 返回一個包含字典所有 vaule 的列表
get 以鍵取值,如果指定鍵不存在,默認返回 None,可以指定返回內容
update 以字典格式更新指定鍵的內容,如果鍵不存在,創建鍵和值
items 返回字典鍵值呈元組形式的格式
元組:tuple=(val1,val2)
1.元組是不可修改,但可以被查看索引的
2.空的tuple可以記為(),若只有一個元素的tuple記為(1,)
(1)枚舉
遍歷的時候使用:重新生成下標和元素的元組
t=(1,2,3) for i in enumerate(t): print(i)#(0, 1)(1, 2)(2, 3)
(2)查找操作
index(元素名) 從左往右返回第一個遇到的指定元素的索引,如果沒有,報錯
count(元素名) 返回元組當中指定元素的個數
(3)應用場景
字符串格式化需要使用元組
函數返回多個返回值時返回的是元組類型
一些內置函數的返回值是元組類型
集合:set={val1,val2}
1.集合中是不可變的,無序的。
1.集合更接近數學上集合的概念。集合中每個元素都是無序的、不重復的任意對象。
2.集合不能被切片,不能被索引,除了做集合運算之外,集合元素可以被添加和刪除。
(1)增加操作
add(elem) update([elem]/(elem)/'elem')
(2)刪除操作
remove(elem) discard(elem) pop() clear()
(3)查找操作
in
not in
(4)使用場景
去重
5.其他方法
1.查各個數據長度:
len(類型名)
2.數據類型是否可變
可變定義:當該數據類型的對應變量的值發生了改變,那么它對應的內存地址不發生改變
可變:列表,字典 ,集合
不可變:數字,字符串,元組
3.列表,元組,集合的解包
a,*b = [1,2,3] a=1,b=2,3 *a,b = [1,2,3] a=1,2 b=3
以列表為列子,其他兩種類型同理
4,列表,元組的合并和重復
l1=[1,2] l2=[3,4] print(l1+l2) print(l1*2)
總結
以上所述是小編給大家介紹的python中的數據結構比較,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!
如果你覺得本文對你有幫助,歡迎轉載,煩請注明出處,謝謝!
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

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