奇妙的数据结构—列表

1.序列

1.1 序列

  • 基本概念:序列是python中最常见的基本数据类型。序列就是有序存放的一组数据,这些数据有一个个独立的元素组成。每一个元素被分配一个需要元素的位置—,亦称“ 索引 ”,首个索引为0,第二个为1,但是超出最大 “ 索引 ” 会报错。

  • 数据结构是计算机存储数据的方式

1.2序列的分类

  • 可变序列(序列中的元素可以改变):列表(list)、字典(dict)
  • 不可变序列(序列中的元素不可改变):字符串(str)、元组(tuple)

1.3python中常见的序列:列表、元组、字符串、Unicode字符串、buffer对象和xrange对象,其中最常见的是前三种

1.4python中序列所具备的的特征

  • 元素有序存放,且每个元素存放的位置都有一个数字标识,第一个为0,第二个为1,以此类推。最后一个为-1,倒数第二个为-2 ,以此类推。元素的位置叫索引,有时也称下标。
  • 序列能够进行索引操作、切片操作、加法运算、乘法运算和检查元素操作。索引操作能够根据索引的值对元素进行修改或查找元素的值,也能够根据元素的值查找元素的索引。切片操作值能够获取序列中任意一段的数据
  • python能够自动计算出序列类型的长度、最大值、最小值

2.列表

  • 列表是python中的一个对象
  • 列表的作用
    • 列表中可以保存多个有序的数据
    • 列表是用来存储对象的对象

2.1 列表的使用

  • 通过 [ ] 来创建一个列表
    在这里插入图片描述

2.2 切片

  • 从一个现有列表中获得一个子列表

  • 通过切片来获取指定元素

  • 语法:列表 [ 起始:结束 :步长] 遵循在左闭右开的原则

  • 做切片操作时,返回一个新的列表,不会影响原列表

  • 起始位置和结束位置可以不写

    • 如果起始位置省略,则会从第一个元素到结束元素,但不包括最后一个元素
      在这里插入图片描述

    • 如果省略结束位置,则会从当前元素一直截取到最后
      在这里插入图片描述

  • 步长表示每次获取元素的间隔,默认是1(可以省略)

  • 步长不能是0,但是可以为负数,若为负数,则会翻转整个列表
    在这里插入图片描述

3.通用操作

  • +和 *

  • +代表两个列表拼成一个列表

  • *可以将列表重复指定的次数
    在这里插入图片描述

  • in 和 not in

  • in检查指定元素是否在列表中

  • not in 检查元素是否不在列表中
    在这里插入图片描述

  • len()获取列表的个数

  • max()获取列表的最大值

  • min()获取列表的最小值

  • list.index(x[,start[,end]])

    • 第一个参数 获取指定元素在列表的指定位置
    • 第二个参数 表示查找的开始位置
    • 第三个参数 表示查找的结束位置
      在这里插入图片描述
  • list.count(x)统计指定元素在列表中出现的次数
    在这里插入图片描述

4.修改列表

  • 通过切片来修改(起始就是给切片的内容重新赋值,但是赋值的内容必须是一个序列)
  • 当设置了步长时,序列中元素的个数必须和切片元素中的个数保持一致
  • 通过切片来删除元素
    • del list [ 起始:结束 ]
    • list []
      在这里插入图片描述

5.列表的方法

  • append()列表最后添加元素
    在这里插入图片描述
  • insert(参数1,参数2)向列表的指定位置添加元素,参数1指插入的位置,参数2指插入的元素
    在这里插入图片描述
  • extend()将一个列表的所有元素添加到另一个列表的末尾
    在这里插入图片描述
  • pop()根据索引删除并返回指定元素,()里面为空的话,从最后面一个元素开始删除并将该值返回。(i)删除指定位置的元素
    在这里插入图片描述
  • remove()从列表中移除指定值,不会返回指定值,()里面不能为空
    在这里插入图片描述
  • reverse()翻转列表
    在这里插入图片描述
  • sort()给列表进行排序,前提是列表中的元素是可以比较的
    在这里插入图片描述

6.遍历列表

6.1 for循环

  • 通过for循环遍历整个列表

语法
for 变量 in 序列(遍历的规则):
代码块

  • for 循环会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中一个元素的值赋值给变量,所以可以通过变量来获取列表中的元素

6.2 range(start ,stop[,step])

  • 计数从 start 开始,默认从 0 开始
    在这里插入图片描述
  • 计数从 stop 结束,但不包括stop
    在这里插入图片描述
  • step:步长,默认为1。
    在这里插入图片描述
    在这里插入图片描述
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值