您好,登錄后才能下訂單哦!
1:列表 list的定義:
一個連續(xù)的,排列有序的數(shù)列,由若干個元素組成,元素可以是任意對象(數(shù)字、字符串,對象,列表),元素可以使用索引查找,線性的數(shù)據(jù)結(jié)構(gòu)。使用[ ]表示。列表是可變的,是可迭代對象。
列表具體定義
l=[ ] (空列表) l=list(iterable)
列表不能一開始就定義大小。指定大小會報(bào)類型錯誤(TypeError)。
2:列表,鏈表的差異:
列表list(使用index查找,找的代價小,插入比較慢),
鏈表 (查找的比較慢,插入比較方便),
具體花費(fèi)的時間需要根據(jù)具體的使用情況權(quán)衡。
3:queue ,stack的差異
queue(隊(duì)列:先進(jìn)先出的隊(duì)列)
stack(棧:先進(jìn)后出)
4:列表的索引訪問
索引,也叫下標(biāo)
正索引:從左至右,從0開始,為列表中每一個元素編號
負(fù)索引:從右至左,從-1開始
正負(fù)索引不可以超界,否則引起IndexError
約定:可以認(rèn)為列表是從左至右排列,左邊是頭部,右邊是尾部,左邊是下界,右邊是上界
列表通過索引訪問。 list[index],index就是索引,使用中括號訪問
5:列表的查詢方法
index(value,[start,[stop]])通過值查找的。沒有查到就拋ValueError , 靠值遍歷的方式
通過值value,從指定的范圍內(nèi)查找列表內(nèi)的元素是否匹配
匹配第一個就立即返回索引,匹配不到,就拋出異常ValueError
count(value) 靠值遍歷的方式 沒有查找到數(shù)值不拋出異常。返回列表中匹配value的次數(shù)
時間復(fù)雜度 遍歷查找的都是O(n),index和count方法都是O(n)
len () 統(tǒng)計(jì)列表的長度方法
6:列表元素的修改方法
list[index]=value 索引不要超界
列表增加、插入元素
append(object)--->None 列表尾部追加元素,返回None
返回None就意味著沒有新的列表產(chǎn)生,直接修改列表。 時間復(fù)雜度是O(1)
insert(index,object)----->None 在指定的索引index處插入元素object
返回None就意味著沒有新的列表產(chǎn)生,直接修改列表。時間復(fù)雜度是O(n)
注意(使用insert()時): 超越上界,尾部追加。 超越下屆,頭部追加
extend(iteratable)--->none 將可迭代對象的元素追加進(jìn)來,返回None 。直接修改列表。
時間復(fù)雜度是O(1)
+----->list 創(chuàng)建一個沒有引用的新對象,之后會被垃圾回收
鏈接操作,將兩個列表連接起來,原列表不會改變,會產(chǎn)生新的列表
本質(zhì)上是調(diào)用——add_()方法
*------>list 重復(fù)操作,將本列表元素重復(fù)n次,放回新的列表 列表重復(fù),如果設(shè)置數(shù)列里面也是數(shù)列,會遇到修改一 個,其他重復(fù)的元素也跟著修改。
7:列表的刪除元素
remove(value)--->None 從左至右查找第一個匹配的value的值,移除該元素,返回None
時間復(fù)雜度是O(n) ,需要一個一個查找
pop([index])-->item
不指定索引index,就從列表尾部彈出一個元素,這種情況時間復(fù)雜度為:O(1)
指定索引index,就從索引出彈出一個元素,索引超界會拋出IndexError錯誤
clear()---None 清除列表所有元素,剩下一個空列表
8:列表的其他操作
reverse()-->None reverse將列表的元素反轉(zhuǎn),放回None 直接修改列表。
sort(key=None,reverse=false)-->None
對列表元素進(jìn)行排序,直接修改列表,默認(rèn)升序。reverse為True,反轉(zhuǎn),降序
key一個函數(shù),指定Key如何排序 lst.sort(key=functionname)
in 判斷一個列表是否屬于另一個列表
免責(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)容。