列表的定义

  • 关键字:list(列表)
  • 使用最频繁的数据类型, 列表可以完成大多数集合类的数据结构实现
  • 它支持字符, 数字,字符串,元组,列表等数据类型
  • 列表用[]标识
  • 列表是有序数组,可以使用下标取值

空列表

  • l = []

列表里面的数据用逗号隔开,数据可以是任意数据类型

  • 例如: l = [1, 0.02, True, ‘hello’, (1, 2, 3, ‘python’), [1, 0.02, False, [‘python’]]]

列表的操作: 增删改查

  • 列表的特需: 有序可变
  • 有序: 说明有索引, 索引也是从0/-1开始, 也分正序和反序 索引的确定同字符串
  • 可变: 说明列表可以做删、 改、查
  • l = [1, 0.02, True, ‘hello’, (1, 2, 3, ‘python’), [1, 0.02, False, [‘python’]]]
  • 列表元素的查找:
    – 列表里面最后一个元素的里面的python字符串–嵌套取值:根据索引一层一层的取定位: l[-1][-1][0]
    –取上面python字符串里面的y字母:l[-1][-1][0][1]
    –切片:同字符串 元组名[start:\end:step]
    –取值偶数位的元素取值偶数位的元素: l[::2]
    –元组进行倒叙输出:l[::-1]

元组和列表的不同之处

  • 元组不可变, 列表可变
  • 元组如果只有一个元素,需要加逗号, 列表不加逗号
  • 元组的标识 tuple(), 列表list[]

元组和列表的相同之处

  • 有序, 有索引
  • 可以根据索引取值
  • 切片的方式一样

列表的增删改操作

增加元素

  • 原始列表:l=[1, 0.02, True, ‘hello’, (1, 2, 3, ‘python’, (‘python’)), [1, 0.02, False, [‘hello’]]]
  • l.append(‘华华’), 默认追加元素到列表的末尾, 每次只能添加一个元素
  • l.insert(‘1’, ‘python’),可以插入到指定索引位置
  • l.extend([1, 2, 3, 4]),拓展列表的操作, 合并l和extend里面的列表
  • s = [‘a’, ‘b’, ‘c’]
  • l = l + s, 使用加法也可以实现合并两个列表

练习:

  • 添加java这个字符串到hello这个字符串所在的列表里面, 原始列表如上
  • 答案: l[-1][-1].append(‘java’)

修改元素

  • l[3] = 666

删除元素

  • l.pop(), 默认删除最后一个元素
  • l.pop(0), 可以在括号里面指定要删除元素的索引值
  • l.clear(), 清空猎豹

其他用法

  • l.index(‘python’), 获取python的字符串在列表中的索引位置
  • l.count(0.02), 统计元素在列表中出现的次数