码迷,mamicode.com
首页 > 编程语言 > 详细

Python容器篇 2 -- 列表

时间:2020-10-16 11:13:11      阅读:23      评论:0      收藏:0      [点我收藏+]

标签:lan   添加   移动   str   默认   嵌套   动向   自动   class   

列表

list = [item1, item2, ...]

  • 如何定义空列表

    1. em_list = list()
    2. em_list = []
    
  • 如何遍历一个列表

# for循环
for i in alist:
      print(i)

# while循环
i = 0
while i < len(alist):
      print(alist[i])
      i += 1

和字符串一样, 列表既支持下标/索引, 同时也支持切片

从 增删改查 4个角度梳理列表常用的操作方法

修改元素

  • 列表名[下标] = 新的元素值

添加元素

  1. 列表名.append(元素值)

    • 追加到列表的尾部
  2. 列表名.insert(index, 元素值)

    • 可以在列表的任意位置插入
    • index代表要插入的下标位置
  3. 列表名.extend(可迭代对象)

    • 把可迭代对象遍历出来后, 一个一个放在列表尾部

append, insert, extend 这些函数都会直接操作原列表, 而且函数的返回值为 None

查找元素

和字符串不同, 列表不存在find方法 (字符串独占)

  1. 列表名.index(元素值)
    • 返回元素所在位置的下标
  2. 列表名.count(元素值)
    • 统计同一个元素出现的总次数, 返回出现次数
  3. 元素 in/not in 列表名
    • 判断元素在不在列表中
    • 返回布尔值 True/False

删除元素

  1. 列表名.remove(元素)

    • 根据元素值删除
    • 删除不存在的数据时, 会直接报错
    • 返回值 None
  2. del 列表名[下标]

    • 根据下标删除
    • 后边的元素会自动向前移动
  3. 列表名.pop(下标)

    • 根据下标删除
  4. 列表名.pop()

    • 默认删除列表最后一个元素
    • 会将被删除的元素返回出来
    • 需要从列表中取数据, 同时缩短列表的情况下使用

remove, del, pop 这三种方法都是会直接操作原列表, remove返回None, pop返回被删除的元素值

列表排序

  1. 直接操作原列表
    • 升序排序 list.sort()
    • 降序排序 list.sort(reverse=True)
  2. 不修改原列表, 而是返回一个新列表
    • 函数 sorted(list)

列表逆置(反转)

注意: 反转与大小排序无关, 只是单纯的倒过来

  1. 直接操作原列表
    • list.reverse()
  2. 不修改原列表, 而是返回一个新的列表
    • list[::-1] 用上了切片 步长 -1

列表嵌套

列表中有的的元素还是列表

嵌套的外层还是按照列表的正常操作去做, 而内层则需要双重下标才能访问的到

列表 list = [..., alist, ...] 的第i个元素是 alist

那么就需要用 list[i][j] 去访问 alist的第j个元素

Python容器篇 2 -- 列表

标签:lan   添加   移动   str   默认   嵌套   动向   自动   class   

原文地址:https://www.cnblogs.com/sn0wp3ak/p/13823341.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!