溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python中有哪些數(shù)據(jù)結(jié)構(gòu)

發(fā)布時間:2021-02-18 16:52:00 來源:億速云 閱讀:102 作者:Leah 欄目:開發(fā)技術(shù)

這期內(nèi)容當(dāng)中小編將會給大家?guī)碛嘘P(guān)python中有哪些數(shù)據(jù)結(jié)構(gòu),文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

列表:list=[val1,val2]

1.列表中的每一個元素都是可變的,有序的,可以被查看索引的。

可變意味著可以對每個元素進(jìn)行增刪改查的操作,列表中的元素可以是Python中的任何對象

(1)創(chuàng)建列表的方法:

  一.是用方括號[]直接賦值,賦一組以逗號隔開的值;            

 newlist=[1,2,3]
  print(newlist) #[1, 2, 3]
  print(type(newlist)) #查看類型為:<class 'list'>

     二.是調(diào)用list函數(shù)進(jìn)行定義。     

 tup=('q','w','e')
  print(type(tup)) #<class 'tuple'>
  change_tup=list(tup)
  print(type(change_tup))#<class 'list'>

(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將指定序列的元素依次追加到列表的尾部(合并),

   不會去重復(fù)內(nèi)容

 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刪除整個列表或列表的數(shù)據(jù),del 是 python 內(nèi)置功能,

   不是列表獨(dú)有的                            

del change_tup[-1]
 print(change_tup)#['a', 'e', 'f', 'b', 'c']

(4)查找操作

index(元素名):獲取查詢元素在列表中的索引值
count(元素名):統(tǒng)計(jì)某元素在列表中出現(xiàn)的次數(shù)
if 某元素 in 列表名:判斷某元素是否在列表內(nèi)

(5)修改操作

list[index] = value
reverse():反轉(zhuǎn)列表
sort():從原列表上按從小到大排序
sorted(列表名)生成新列表按從小到大進(jìn)行排序

(6)特殊操作

max(列表名):最大值
min(列表名):最小值   

字典:dict={key1:val1,key2:val2}

1.字典中的值是可變的,無序的。
2.字典中的數(shù)據(jù)必須以鍵值對的形式出現(xiàn)
3.鍵不可重復(fù),值可重復(fù)
4.字典中鍵(key)是不可變的,為不可變對象,不能進(jìn)行修改;而值(value)是可以修改的,可以是任何對象。

(1)增加操作

變量名[key]=value 通過 key 添加 value 值,如果 key 存在則覆蓋
setdefault(key,default_value) 指定 key 和 value,如果 key 存在則覆蓋

(2)刪除操作

pop 彈出,返回并刪除指定鍵對應(yīng)的值
popitem 隨機(jī)彈出一個鍵值元組,這里隨機(jī)的原因是因?yàn)樽值錈o序
clear 清空字典

(3)修改操作

變量名[key]=value 通過 key 添加 value 值,如果 key 存在則覆蓋
update() 傳遞一個字典,如果 key 相同則覆蓋,沒有的 key 則添加

(4)查找操作

keys 返回一個包含字典所有 key 的列表
values 返回一個包含字典所有 vaule 的列表
get 以鍵取值,如果指定鍵不存在,默認(rèn)返回 None,可以指定返回內(nèi)容
update 以字典格式更新指定鍵的內(nèi)容,如果鍵不存在,創(chuàng)建鍵和值
items 返回字典鍵值呈元組形式的格式

元組:tuple=(val1,val2)

1.元組是不可修改,但可以被查看索引的
2.空的tuple可以記為(),若只有一個元素的tuple記為(1,)

(1)枚舉

遍歷的時候使用:重新生成下標(biāo)和元素的元組

t=(1,2,3)
for i in enumerate(t):
 print(i)#(0, 1)(1, 2)(2, 3)

(2)查找操作

index(元素名) 從左往右返回第一個遇到的指定元素的索引,如果沒有,報(bào)錯
count(元素名) 返回元組當(dāng)中指定元素的個數(shù)

(3)應(yīng)用場景

字符串格式化需要使用元組
函數(shù)返回多個返回值時返回的是元組類型
一些內(nèi)置函數(shù)的返回值是元組類型

集合:set={val1,val2}

1.集合中是不可變的,無序的。
1.集合更接近數(shù)學(xué)上集合的概念。集合中每個元素都是無序的、不重復(fù)的任意對象。
2.集合不能被切片,不能被索引,除了做集合運(yùn)算之外,集合元素可以被添加和刪除。

(1)增加操作

add(elem)
update([elem]/(elem)/'elem')

(2)刪除操作

remove(elem)
discard(elem)
pop()
clear()

(3)查找操作

in
not in

(4)使用場景

去重

5.其他方法

1.查各個數(shù)據(jù)長度:

len(類型名)

2.數(shù)據(jù)類型是否可變

可變定義:當(dāng)該數(shù)據(jù)類型的對應(yīng)變量的值發(fā)生了改變,那么它對應(yīng)的內(nèi)存地址不發(fā)生改變
可變:列表,字典 ,集合
不可變:數(shù)字,字符串,元組

3.列表,元組,集合的解包

a,*b = [1,2,3] a=1,b=2,3
*a,b = [1,2,3] a=1,2 b=3

以列表為列子,其他兩種類型同理

4,列表,元組的合并和重復(fù)

l1=[1,2]
l2=[3,4]
print(l1+l2)
print(l1*2)

上述就是小編為大家分享的python中有哪些數(shù)據(jù)結(jié)構(gòu)了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI