python3之列表(list)

一、序列

包含多项数据,数据项(成员)按顺序排列,可以通过索引来访问成员

 

序列类型

基础序列类型: list, tuple, range
文本字符串序列: string
二进制数据序列: bytes, bytearray, memoryview

 

二、列表

由一系列按特定顺序排列的元素组成,可以随时添加和删除其中的元素

 

定义

list_name = [value1, value2, value3,...]

或者 list_name
= list(iterable)

 

三、列表操作

1 索引

list_1 = list(r'https://docs.python.org/release/3.8.4/library/stdtypes.html')

list_1[2]
从列表中取出index=2的元素,索引超出列表长度引发 IndexError 异常

list_1[-4]
从列表中取出倒数第四个元素,最右边的元素index=-1,索引超出列表长度引发 IndexError 异常

list_1[5:15]
切片,从列表中取出index范围为[5,15)(不包括15)的子列表

list_1[7:-4]
切片,从列表中取出index范围为[7,-4)(不包括-4)的子列表

list_1[-4:-2]
切片,从列表中取出index范围为[-4,-2)(不包括-2)的子列表

切片时,索引超出列表长度也不会引发异常

 

2 运算

list_1 = list(range(10))
list_2 = ['aaa', 123, 'sss', 987, 'T', 342]

list_3 = list_1 + list_2
列表拼接

list_4 = list_2 * 3
列表重复3次

len(list_4)
获取列表的长度,即列表的元素个数

5 in list_1
'AAA' in list_1
列表中包含给定元素返回 True,否则返回 False

99 not in list_2
'aaa' not in list_2
列表中不包含给定元素返回True,否则返回 False    

 

四、列表方法

1 增加列表元素

list_name.append(value)  
在列表末尾的添加一个值为value的元素
value可以是单个值,也可以是元组或者列表,value是元组或者列表时,元组或列表会被当成单个元素


list_name.extend(list|tuple|range)
在列表末尾追加一个列表或元组或range,里面的元素会被拆分为多个单个元素

list_name.insert(index, value) 
在列表索引index处插入元素value,index超出列表长度,则在列表末尾插入

 

2 删除列表元素

del list_name[start:end:step] 
从列表中删除index范围[start, end)(不包括end),间隔为step的元素

list_name.clear() 
清空列表所有值,原列表变成空列表

list_name.remove(value)
从列表中删除第一个为value的元素,若value不在列表中,引发 ValueError 异常

list_name.pop(index)
从列表中删除索引为idnex的元素,并且返回该元素的值
若不提供index,表示删除最后一个元素

 

3 修改列表

list_name[index] = new_value
把列表index处的值修改为new_value,index超出列表长度,引发 IndexError 异常

list_name[start:end] = new_value
把列表index范围为[start, end)(不包括end)的值修改为 new_value
new_value必须是iterable,iterable的长度不一定和[start, end)范围相等

 

4 其他方法

list_name.count(value)
返回元素在列表中出现的次数

list_name.index(value)
返回元素在列表中首次出现的索引,若value不在列表中,引发 ValueError 异常

list_name.reverse()
返回按相反顺序排列后的列表

list_name.sort()
返回升序排列后的列表

 

posted @ 2021-02-09 21:33  junffzhou  阅读(159)  评论(0编辑  收藏  举报