python學習3-內置數據結構1-列表

列表及常用操作

    列表是一個序列,用於順序的存儲數據

1、定義與初始化

lst = list() #使用list函數定義空列表

lst = []    #使用中括號定義列表

lst = [1,2,3]    #使用中括號定義初始值列表

lst = list(range(1,20))    #使用list把可迭代對象轉換爲列表

    通常在定義列表的時候,使用中括號,在轉化可迭代對象爲列表是使用list函數

2、查

lst[0]    #通過下標來訪問,當下標超出範圍時,會indexeError

lst[-1]    #負數索引從右邊開始,並且從-1開始,當下標超出範圍,會indexError

lst.index(value)    #通過值來查找索引,返回查找到的第一個索引 

lst.index(value,start,stop) #start指定從那個索引開始,end指定那個結束,並且不包含該索引,當值不存在該範圍時,會ValueError,可以爲負數,但是從左往右查找,凡是stop比start小總是ValueError。

lst.count(value) #返回值在列表裏面出現的次數

index和count時間複雜度O(n)

3、改

lst[2] = 5 #直接使用下標操作取出元素並對其賦值,修改元素有且只有這種方法,對超出範圍的索引會IndexError

4、增

lst.append(單個元素) #原地修改,返回結果是None,時間複雜度O(1)

lst.insert(index,value) #在index前插入value,也是原地修改,當索引超出範圍時:當下標爲負數,在第0個元素前插入值;當下標爲正數,則在末尾插入值。時間複雜度是O(n)

lst.extend(可迭代對象) #把可迭代對象追加到末尾

lst + ['a','b'] #不修改lst本身,返回一個新的list,list的連接操作

5、刪

lst.remove(value) #原地修改,根據值刪除元素,從左到右刪除第一個,當不存在時,ValueError。

lst.pop() #返回並刪除最後一個元素,時間複雜度O(1)

lst.pop(index) #返回並刪除index所在位置的值,不存在的索引,IndexError。時間複雜度O(n)

lst.clear() #清空列表

6、其它操作

len(lst) #查list的長度

lst.rerverse() #反轉列表 無返回值

lst.sort() #排序 無返回值,元素能相互比較

lst.sort(reverse=True) #逆序

lst1 = lst #引用,複製的是地址。類似硬連接。

lst2 = lst.copy() #對可變對象是引用傳遞,對不可變是值傳遞


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章