>[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">
:-: ![](https://box.kancloud.cn/2ff0bc02ec938fef8b6dd7b7f16ee11d_258x258.jpg)
***微信扫一扫,关注“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 高级特性_列表处理