列表
Python中列表是可變的,這是它區(qū)別于字符串和元組的最重要的特點(diǎn),一句話概括即:列表可以修改,而字符串和元組不能。
以下是 Python 中列表的方法:
方法 | 描述 |
list.append(x)
把一個(gè)元素添加到列表的結(jié)尾,相當(dāng)于 a[len(a):] = [x]。
list.extend(L)
通過添加指定列表的所有元素來擴(kuò)充列表,相當(dāng)于 a[len(a):] = L。
list.insert(i, x)
在指定位置插入一個(gè)元素。第一個(gè)參數(shù)是準(zhǔn)備插入到其前面的那個(gè)元素的索引,例如 a.insert(0, x) 會(huì)插入到整個(gè)列表之前,而 a.insert(len(a), x) 相當(dāng)于 a.append(x) 。
list.remove(x)
刪除列表中值為 x 的第一個(gè)元素。如果沒有這樣的元素,就會(huì)返回一個(gè)錯(cuò)誤。
list.pop([i])
從列表的指定位置移除元素,并將其返回。如果沒有指定索引,a.pop()返回最后一個(gè)元素。元素隨即從列表中被移除。(方法中 i 兩邊的方括號(hào)表示這個(gè)參數(shù)是可選的,而不是要求你輸入一對(duì)方括號(hào),你會(huì)經(jīng)常在 Python 庫(kù)參考手冊(cè)中遇到這樣的標(biāo)記。)
list.clear()
移除列表中的所有項(xiàng),等于del a[:]。
list.index(x)
返回列表中第一個(gè)值為 x 的元素的索引。如果沒有匹配的元素就會(huì)返回一個(gè)錯(cuò)誤。
list.count(x)
返回 x 在列表中出現(xiàn)的次數(shù)。
list.sort()
對(duì)列表中的元素進(jìn)行排序。
list.reverse()
倒排列表中的元素。
list.copy()
返回列表的淺復(fù)制,等于a[:]。
下面示例演示了列表的大部分方法:
注意:類似 insert, remove 或 sort 等修改列表的方法沒有返回值。
將列表當(dāng)做堆棧使用
列表方法使得列表可以很方便的作為一個(gè)堆棧來使用,堆棧作為特定的數(shù)據(jù)結(jié)構(gòu),最先進(jìn)入的元素最后一個(gè)被釋放(后進(jìn)先出)。用 append() 方法可以把一個(gè)元素添加到堆棧頂。用不指定索引的 pop() 方法可以把一個(gè)元素從堆棧頂釋放出來。例如:
將列表當(dāng)作隊(duì)列使用
也可以把列表當(dāng)做隊(duì)列用,只是在隊(duì)列里第一加入的元素,第一個(gè)取出來;但是拿列表用作這樣的目的效率不高。在列表的最后添加或者彈出元素速度快,然而在列表里插入或者從頭部彈出速度卻不快(因?yàn)樗衅渌脑囟嫉靡粋€(gè)一個(gè)地移動(dòng))。