总结Python如何操作列表基础知识。列表操作一文通 。
何为列表
name = ['Michael', 'Bob', 'Tracy']
a = [5, 2, 3, 1, 4]
li = [{"day":2},{"day":1},{"day":3}]
符合以上特点,可称为列表
创建列表
list1 = []
list2 = [2, 3, 4]
list3 = ["red", "green"]
list4 = [2, "three", 4] #注意:一个列表里面可以包含不同类型的元素
列表操作
- 取值
List[0] #取第一个值 List[0:5] #取前五个值 List[-1] #取最后一个值
- 输出列表长度
print(len(list_name)
- 修改
List[0] = 'aaxzaxjsa'
- 列表排序
List.sort() #正向排序 List.reverse() #反转列表 List.sort().reverse() #先正向排序再反转列表,就是反向排序
- 列表内元素完成复制
使用
*
完成>>> a=[1,2] >>> a*2 [1, 2, 1, 2]
- 列表倒置
list_name[::-1] 或 list_name.reverse()
- 列表切片
#列表切片,切取索引从a到b-1的元素
sample[a:b]
#列表切片,切取索引从a到结束的元素
sample[a:]
#列表切片,切取索引从0到b-1的元素
sample[:b]
#列表复制,切取所有并赋值给一个变量
variable_name=sample[:]
- 列表解析
>>> list1 = [x for x in range(5)] >>> list1 [0, 1, 2, 3, 4] >>> list2 = [0.5 * x for x in list1] >>> list2 [0.0, 0.5, 1.0, 1.5, 2.0] >>> list3 = [x for x in list2 if x < 1.5] >>> list3 [0.0, 0.5, 1.0]
- 列表遍历
for element in sample: print (element)
- 列表组合
将列表或元组对应位置的元素组合成元组,并返回包含这些元组的zip对象,里面是一个个元组
>>>a=[1,2,3] >>>b=[4,5,6] >>>list(zip(a,b)) [(1,4),(2,5),(3,6)]
- 常用方法
L.index(value[,begin[,end]]) - 返回对应元素的索引下标, - begin为开始索引,end为结束索引 - 当 value 不存在时触发ValueError错误 L.insert(index,obj):在指定位置插入元素 - index:索引值,插入到索引值之前 L.count(x):返回列表中x的个数(没有,返回0) L.remove(value):从列表中删除值 - 只删除第一次出现的value - 需要知道value L.copy():复制列表(生成新的id值;只复制一层,不复制深层对象) L.append(value) - 向列表末尾追加单个元素 - L = [1,2,3] L.append([6,7,8]) --> L = [1,2,3,[6,7,8]] L.extend(list) - 扩展,向列表追加列表 - L = [1,2,3] L.extend([6,7,8]) --> L = [1,2,3,6,7,8] 也就是列表的合并 >>> L1 = [1, 2, 3, 4, 5] >>> L2 = [20, 30, 40] >>> L1.extend(L2) >>> L1 [1, 2, 3, 4, 5, 20, 30, 40] 直接使用L1 + L2亦可 L.clear(): 清空列表 - 等同于 L[:] = [] L.sort(reverse = False):排序 - 将列表中的元素进行排序,默认顺序按值的小到大的顺序排列 L.reverse():列表的反转,改变原列表的先后顺序,返回值None L.pop([index]):弹出元素 - 不加index时,默认删除最后一个元素,并返回删除元素的引用关系 - 删除索引对应的元素 求和 sum(list_name) 最大最小 max(a) min(a)
- 列表元素去重
>>> a [1, 2, 2, 3, 6, 8] >>> a = list(set(a)) >>> a [1, 2, 3, 6, 8] >>>
- 将字符串分割为列表
str类中的split方法,可指定分割的标志。
>>> items = "the weather is cold today".split() >>> items ['the', 'weather', 'is', 'cold', 'today'] >>> items = "2019/11/6".split("/") >>> items ['2019', '11', '6']
- Python将多个list合并为1个list 可以使用”+”号完成操作,或使用extend方法。