本文將總結python中關於列表和元組的一些常用函式與方法。
一、列表的基本操作
python使用使用中括號[ ]來解析列表。列表是可變的(mutable),即列表的內容是可以改變的。列表可以使用所有適用於序列的標準操作,例如索引、分片、連線和乘法。
1. list() 函式
list() 函式可以把乙個序列型別轉換成乙個列表。list()函式可以作用於所有型別的序列(而不只是字串)。
list(『hello』) >>> [『h』, 『e』, 『l』, 『l』, 『o』]
2. 改變列表:元素賦值
可以使用索引值來為某個特定的、位置明確的元素賦值。但不能為某個位置不存在的元素進行賦值。
x = [1, 1, 1]
x[1] = 2
print(x) >>> [1, 2, 1]
3. 刪除元素
從列表中刪除元素也很容易:使用 del 語句來實現。
names = [『alice』, 『beth』, 『cecil』, 『dee-dee』, 『earl』]
del names[2] # 除了刪除列表中的元素,del 語句還能用於刪除其他元素。
print(names) >>> [『alice』, 『beth』, 『dee-dee』, 『earl』]
4. 切片賦值
name = list(『kobe』)
print(name) >>> [『k』, 『o』, 『b』, 『e』]
name[2:] = list(『cd』)
print(name) >>> [『k』, 『o』, 『c』, 『d』]
在使用切片賦值操作時,可以使用與原序列不等長的序列將分片替換:
name = list(『perl』)
name[1:] = list(『ython』)
print(name) >>> [『p』, 『y』, 『t』, 『h』, 『o』, 『n』]
切片賦值還可以在不替換任何原有元素的情況下,為列表插入新的元素。
numbers = [1, 5]
numbers[1:1] = [2, 3, 4]
print(numbers) >>> [1, 2, 3, 4, 5]
通過列表切片還可以用來刪除元素。
numbers = [1, 2, 3, 4, 5]
numbers[1:4] =
print(numbers) >>> [1, 5]
二、列表方法(物件.方法(引數))
list1 = [1, 2, 3]
print(list) >>> [1, 2, 3, 4]
2. count():用於統計某個元素在列表中出現的次數。
list2 = [『to』, 『be』, 『or』, 『not』, 『to』, 『be』]
print(list2.count(『to』)) >>> 2
x = [[1,2], 1, 1, [2, 1, [1, 2]]]
print(x.count(1)) >>> 2
3. extend():用於在列表的末尾新增另乙個序列。
a = [1, 2, 3]
b = [4, 5, 6]
print(a.extend(b)) >>> [1, 2, 3, 4, 5, 6]
extend()會修改被擴充套件的列表,而原始的連線操作(+)則不會,它將返回乙個全新的列表。
print(a) >>> [1, 2, 3, 4, 5, 6]
print(a + b) >>> [1, 2, 3, 4, 5, 6]
print(a) >>> [1, 2, 3]
4. index():用於從列表中找出某個值第乙個匹配項的索引位置。當搜尋不存在的值時,程式就會引發乙個異常。
knights = [『we』, 『are』, 『the』, 『knights』, 『who』, 『say』, 『ni』]
print(knights.index(『who』) >>> 4
5. insert():用於將物件插入到列表中的相應的位置。
numbers = [1, 2, 3, 5, 6, 7]
numbers.insert(3, 『four』)
print(numbers) >>>[1, 2, 3, 『four』, 5, 6, 7]
6. pop():用於移除列表中的乙個元素(預設是最後乙個),並且返回該元素的值。pop方法是唯一乙個即能修改列表又返回元素值(除了none)的列表方法。
x = [1, 2, 3]
x.pop() >>> 3
print(x) >>> [1, 2]
x.pop(0) >>> 1
7. remove():用於移除列表中某個值的第乙個匹配項。只有第一次出現的值被移除,而不存在與列表中的值是不會移除的。remove()是乙個沒有返回值卻能改變原位置的方法,它修改了列表卻沒有返回值。
x = [『to』, 『be』, 『or』, 『not』, 『to』, 『be』]
x.remove(『be』)
print(x) >>> [『to』, 『or』, 『not』, 『to』, 『be』]
8. reverse():將列表中的元素反向倒序。
x = [1, 2, 3]
x.reverse()
print(x) >>> [3, 2, 1]
9. sort():用於在原位置對列表進行排序。
x = [4, 6, 2, 1, 7, 9]
x.sort()
print(x) >>> [1, 2, 4, 6, 7, 9]
三、元組
(不可變序列)
建立元組的語法很簡單:如果你用逗號分隔了一些值(1, 2, 3),那麼你就自動建立了元組。
實現包括單值的元組,必須加個逗號:(42,)
tuple函式的功能與list函式基本上是一樣的:以乙個序列作為引數並把它轉化為元組。
tuple([1, 2, 3]) >>> (1, 2, 3)
唯一不同的就是元組是不可改變的,不可刪除其中的元素。除了建立元組和訪問元組元組之外,也沒有太多其他操作,可以參考其他型別的序列來實現。元組的意義在於它可以在對映(和集合的成員)中當作鍵使用,而列表則不行;元組作為很多內建函式和方法的返回值存在。
python中列表與元組
pop 移除指定索引的一項 insert 指定索引位置前插入一項 remove 按照值移除元素 sort 排序 reverse 對列表進行反轉 index 獲取索引 del 刪除 列表中還可以巢狀列表 列表的解析操縱 one line表示式 a 1,2 x,y a x 1,y 2 d d.keys ...
python中的列表與元組
python當中沒有陣列這個概念,但是有比陣列更為強大且功能齊全的列表。建立列表 建立列表和建立普通變數一樣,用中括號括起來一堆資料就可以了,資料之間用逗號隔開,這樣乙個普普通通的列表就建立成功了 列表裡可以有整型 字串 浮點型,甚至列表裡面包含另乙個列表,如果實在想不到往列表裡面塞什麼資料的時候,...
PYTHON 列表與元組
列表簡介 是一種內建的資料結構,用來儲存一系列的元素 同js一樣,由於解釋性語言不必宣告資料型別,所以陣列的元素也可以很靈或的不相同。列表的運算 index索引運算 切片運算 拼接運算 重複運算 成員運算in 長度運算len 迴圈for 列表方法 list.intex 可以返回任意的方法 my li...