1. 程式人生 > >Python基礎【day02】:列表

Python基礎【day02】:列表

nts 序列 number zhang .com alt mes highlight ble

列表是Python最常用的數據類型之一,通過列表可以對數據實現最方便的存儲、修改等操作

1、定義列表

1 2 names = [] #定義空列表 names = [‘a‘,‘b‘,‘c‘] #定義一個非空列表

2、訪問列表中的元素

1 2 3 4 5 6 7 8 9 >>> names = [‘a‘,‘b‘,‘c‘] >>> names[0] ‘a‘ >>> names[1] ‘b‘ >>> names[2] ‘c‘ >>> names[-1]#倒著取最後一個值
‘c‘

註:列表的下標值是從0開始取值的

3、切片

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names[1:3] #取1到3之間的元素,包括1,不包括3 [‘b‘, ‘c‘] >>> names[1:-1] #取1到-1之間的元素,包括1,不包括-1 [‘b‘, ‘c‘] >>> names[0:3] [‘a‘, ‘b‘, ‘c‘] >>> names[:3] #從頭開始取,0可以省略,效果等同於names[0:3]
[‘a‘, ‘b‘, ‘c‘] >>> names[3:] #想取到最後一個值,必須不能寫-1,只能這麽寫 [‘d‘] >>> names[0::2] #後面的2表示:每隔一個元素就取一個 [‘a‘, ‘c‘] >>> names[::2] #從頭開始0可以省略,效果跟上一句一樣 [‘a‘, ‘c‘]

切片小結:

①序列始終都是從左向右切片的,不能是從右向左

①列表切片時,起始位的元素是包括的,結束位的元素是不包括(又叫顧頭不顧尾),最後一個位置表示步長(names[開始位:結束位:步長])

②如果從0位置取值,0可以省略

③想取最後一個值時,結束位不能是-1,因為結束位的元素不包括,所以只能留空

4、追加(append(元素))

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.append(‘e‘) >>> names [‘a‘, ‘b‘, ‘c‘, ‘d‘, ‘e‘]#e是新加的元素

5、插入(insert(下標值,插入的內容))

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.insert(0,‘1‘) #0表示需要插入的下標值,‘1‘表示插入的內容 >>> names [‘1‘, ‘a‘, ‘b‘, ‘c‘, ‘d‘] #在下標值為0的地方插入‘1‘

6、修改

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names[1] = ‘1‘ >>> names [‘a‘, ‘1‘, ‘c‘, ‘d‘]

註:修改列表中的元素,直接是 names[下標值] = 新值

7、拷貝(copy())

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names2 = names.copy() >>> names2 [‘a‘, ‘b‘, ‘c‘, ‘d‘]

註:這邊的copy都是淺copy,只能copy第一層。深淺拷貝的詳細信息:猛擊這裏

8、刪除(del、remove(元素)、pop())

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 #根據下標值刪除元素 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> del names[0] >>> names [‘b‘, ‘c‘, ‘d‘] #根據元素刪除 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.remove(‘a‘) >>> names [‘b‘, ‘c‘, ‘d‘] #刪除最後一個 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.pop() ‘d‘ >>> names [‘a‘, ‘b‘, ‘c‘]

註:

①如果pop()中有下標值,則是刪掉具體某個元素,其效果和del的效果是一樣的

1 2 3 4 5 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.pop(1) #在輸入下標值得情況下和del的效果是一樣的 ‘b‘ >>> names [‘a‘, ‘c‘, ‘d‘]

②del關鍵字不僅可以刪除列表中的元素,也可以刪除變量

1 2 3 names = [‘a‘,‘b‘,‘c‘,‘d‘] #刪除names這個變量 del names

9、擴展(extend)

1 2 3 4 5 >>> names1 = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names2 = [1,2,3,4] >>> names1.extend(names2) >>> names1 [‘a‘, ‘b‘, ‘c‘, ‘d‘, 1, 2, 3, 4]

註:names2的列表合並到names1中,但是,names2這個列表依然存在,如果想刪除names2這個變量,則只需del names2即可

10、統計(count(元素))

1 2 3 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘,‘a‘] >>> names.count(‘a‘) #統計‘a‘元素的個數 2

11、翻轉(reverse())

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.reverse() >>> names [‘d‘, ‘c‘, ‘b‘, ‘a‘] #將整個列表翻轉過來

12、排序(sort())

1 2 3 4 >>> names = [4,2,3,1] >>> names.sort() >>> names [1, 2, 3, 4]

13、獲取下標值(index(元素))

1 2 3 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.index(‘a‘) 0

14、清空列表(clear())

1 2 3 4 >>> names = [‘a‘,‘b‘,‘c‘,‘d‘] >>> names.clear() >>> names []

Python基礎【day02】:列表