>[info]列表List就是一條有序的鏈
[TOC]
<br>
### 列表的定義
```python
alist1=['a','b','c']
alist2=[1,2,3]
alist3=[[1,2],[3,4]]
```
列表中的值,可以是任意一種數據類型,任意一種結構。可以通過索引訪問其中的值,索引值從`0`開始,最后一個值的索引為`-1`如
alist1[0]=='a' # true
alist2[-1] == 3 # true
alist3[0][0] == 1 # true
### 列表的常用方法
*大家學習時,請通過源碼學習,這里就不將源碼貼出來了*
#### append(p_object): 往列表尾部添加元素
```cmd
>>> alist=[1,2,3]
>>> alist.append('4')
>>> alist
[1, 2, 3, '4']
```
***
#### pop(index=None):將索引位置的元素拋出
默認尾部
```cmd
>>> alist=[1,2,3]
>>> alist.pop()
3
>>> alist
>>>[1,2]
```
指定索引值
```cmd
>>> alist=[1,2,3]
>>> alist.pop(1)
2
>>> alist
[1, 3]
```
***
#### insert(index,p_object):在某索引前面插入元素
```cmd
>>> alist=[1,2,3]
>>> alist.insert(0,'insert_val')
>>> alist
['insert_val', 1, 2, 3]
```
***
#### remove(value):移除首個某元素
```cmd
>>> alist=[1,2,3,2,4]
>>> alist.remove(2)
>>> alist
[1, 3, 2, 4]
```
注意,如果元素不存在,則報錯
```cmd
>>> alist
[1, 3, 2, 4]
>>> alist.remove(5)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: list.remove(x): x not in list
```
***
#### count(value):統計列表中某元素存在的數量
```cmd
>>> alist=[1,2,3,2,4]
>>> alist.count(2)
2
>>> alist.count(3)
1
>>> alist.count(5)
0
```
***
#### extend(iterable):將列表合并,追加
```cmd
>>> alist=[1,2,3]
>>> alist.extend([4,5,6])
>>> alist
[1, 2, 3, 4, 5, 6]
```
除了extend方法,列表合并還可以使用運算符‘+’,但是‘+’不會修改原列表,而是生成一個新的列表
```cmd
>>> alist+[4,5,6]
[1, 2, 3, 4, 5, 6]
>>> alist
[1, 2, 3]
```
***
#### index(value, start=None, stop=None):返回某元素首次出現的索引
```cmd
>>> alist=[1,2,3,2,4]
>>> alist.index(2)
1
```
注意:當值不存在時,會拋出異常
```cmd
>>> alist=[1,2,3,4]
>>> alist.index(5)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: 5 is not in list
```
***
#### copy():淺拷貝
```cmd
>>> a1_list=[1,2,3]
>>> a2_list=a1_list.copy()
>>> a1_list.append(4)
>>> a1_list
[1, 2, 3, 4]
>>> a2_list
[1, 2, 3]
```
這里注意區別于`=`賦值
```cmd
>>> b1_list=[1,2,3]
>>> b2_list=b1_list
>>> b1_list.append(4)
>>> b1_list
[1, 2, 3, 4]
>>> b2_list
[1, 2, 3, 4]
```
***
#### reverse():將列表元素反轉
```cmd
>>> alist=[1,2,4,3]
>>> alist.reverse()
>>> alist
[3, 4, 2, 1]
```
***
#### sort(key=None, reverse=False):將列表排序,默認升序
```cmd
>>> alist=[1,2,4,3]
>>> alist.sort()
>>> alist
[1, 2, 3, 4]
>>> alist.sort(reverse=True)
>>> alist
[4, 3, 2, 1]
```
***
#### clear():將列表清空
```cmd
>>> alist=[1,2,3]
>>> alist
[1, 2, 3]
>>> alist.clear()
>>> alist
[]
```
<hr style="margin-top:100px">
:-: 
***微信掃一掃,關注“python測試開發圈”,了解更多測試教程!***
- 前言
- chapter01_開發環境
- chapter02_字符串的使用
- chapter03_列表的使用
- chapter04_字典的使用
- chapter05_數字的使用
- chapter06_元組的使用
- chapter07_集合的使用
- chapter08_輸入輸出
- chapter09_控制流程
- chapter10_實例練習_登錄1
- chapter11_python函數入門
- chapter12_python中的類
- chapter13_輕松玩轉python中的模塊管理
- chapter14_掌握學習新模塊的技巧
- chapter15_通過os模塊與操作系統交互
- chapter16_子進程相關模塊(subprocess)
- chapter17_時間相關模塊(time & datetime)
- chapter18_序列化模塊(json)
- chapter19_加密模塊(hashlib)
- chapter20_文件的讀與寫
- chapter21_階段考核2_登錄
- chapter22_小小算法挑戰(排序&二分法)
- chapter23_用多線程來搞事!
- chapter24_HTTP接口請求(requests)
- chapter25_接口測試框架(pytest)
- chapter26_階段考核3_HTTP接口測試
- chapter27_HTML解析(pyquery)
- chapter28_階段考核4_爬蟲下載網易汽車
- chapter29_python中的那些編碼坑
- chapter30_MySQL數據庫操作
- chapter31 高級特性_迭代器與生成器
- chapter32 高級特性_裝飾器
- chapter33 高級特性_列表處理