• 列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。
  • 列表用 [ ] 标识,是 python 最通用的复合数据类型。
  • 列表中值的切割也可以用到变量 [头下标``**:**``尾下标],就可以截取相应的列表。
  • 从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。

  1. # 在尾部 插入
  2. list.append(1)
  1. # 在 何处 插入
  2. list.insert(1, '2')
  1. # 列表合并
  2. list.extend(list2)

  1. # 删除 指定索引 数据
  2. del list[1]
  1. # 只会删除 第一次 出现的值
  2. list.remove(1)
  1. # 删除 末尾 数据
  2. list.pop()
  1. # 清空列表
  2. list.clear()

  1. # 通过 索引 改值
  2. list[0] = 1

  1. # 根据 值 查对应的索引
  2. list.index(1)
  1. # 统计数据出现 次数
  2. list.count(2)
  1. # 最大值,最小值
  2. max(list)
  3. min(list)

遍历

  1. # 遍历列表返回下标和元素
  2. list = ['zero', 'one', 'two', 'three']
  3. for index, item in enumerate(list): # enumerate: 转为枚举类型
  4. print(index, item)

image.png

排序

  1. # 排序, 默认从小到大
  2. list.sort()
  1. # 降序
  2. list.sort(reverse = True)
  1. # 排序, 处理的一般是 可迭代对象
  2. # 不会直接修改原列表,通常用它替代sort()
  3. list.sorted()
  1. # 反转 列表
  2. list.reverse()

列表的生成式

  1. list1 = [x for x in range(1, 100)] # 用这种语法创建列表之后元素已经准备就绪所以需要耗费较多的内存空间
  2. print(sys.getsizeof(list1)) # 查看对象占用内存的字节数

相关函数

函数 描述


cmp(list1, list2)


比较两个列表的元素


len(list)


列表元素个数


max(list)


返回列表元素最大值


min(list)


返回列表元素最小值


list(seq)


将元组转换为列表

相关方法

方法 描述


list.append(obj)


在列表末尾添加新的对象


list.count(obj)


统计某个元素在列表中出现的次数


list.extend(seq)


在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)


list.index(obj)


从列表中找出某个值第一个匹配项的索引位置


list.insert(index, obj)


将对象插入列表


list.pop(obj=list[-1])


移除列表中的一个元素(默认最后一个元素),并且返回该元素的值


list.remove(obj)


移除列表中某个值的第一个匹配项


list.reverse()


反向列表中元素


list.sort([func])


对原列表进行排