Python学习(6) 之 列表

本文介绍了Python中的序列和列表,详细讲解了列表的基本概念、使用、切片、通用操作、修改列表及其方法。通过实例展示了如何创建、访问、修改和操作列表,包括列表的拼接、元素查找、统计、排序等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 序列(sequence)

1.1 基本概念
  • 序列是Python中最基本的一种数据结构。序列用于保存一组有序的数据,所有的数据在序列当中都有一个唯一的位置(索引)并且序列中的数据会按照添加的数序来分配索引
  • 数据结构:指计算机中数据存储的方式
1.2 序列的分类
  • 可变序列 (序列中的元素可以改变):例如 列表(list) 字典(disct)
  • 不可变序列(序列中的元素不能改变): 例如 字符串(str) 元组(tuple)

2. 列表(list)

  • 列表是Python中的一个对象
  • 列表的作用
    • 列表中可以保存多个有序的数据
    • 列表用来存储对象的对象
2.1 列表的使用
  • 列表的创建:通过[ ] 来创建一个空列表
    • 一个列表中可以存储多个元素,也可以在创建列表的时候,指定列表当中的元素
    • 当列表当中添加多个元素要用 , 隔开
    • 列表可以存储任意对象
  • 索引
    • 我们可以通过索引(index)来获取列表当中的元素
    • 索引就是元素在列表当中的位置,索引从零开始,列表的第一个位置是 0 ,第二个是 1 以此类推
    • 索引可以是负数
      • 如果索引是负数 则从后往前获取元素 -1表示倒数第一个 -2表示倒数第二个 以此类推
    • len() 获取列表的长度
      • 是列表的最大索引值 + 1
        案例
2.2 切片
  • 切片是指从现有列表中 获取一个子列表

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

  • 语法 :

    • 列表 [ 起始位置:结束位置 :步长]
  • 通过切片获取元素时,会包括起始位置的元素,不会包括结束位置的元素

    • 做切片操作时,总会返回一个新的列表,不会影响原来的列表
  • 起始位置和结束位置的索引可以不写

    • 如果我省略结束位置,则会从当前的开始位置一直截取到最后
      例:print(列表名[ 1: ])
    • 如果省略开始位置,则会从第一个元素截取到结束位置的元素,但是不包括结束的元素
      例:print(列表名[ :3])
    • 如果开始位置和结束位置都省略,则会从第一个元素截取到最后一个元素
  • 步长, 表示每次获取元素的间隔,默认是1(可以省略不写)
    步长

  • 步长不能为0,但可以使负数
    -1

3. 通用操作

  • “ + ”号 和 “ * ”号

    • “+”号表示将2个列表拼接成一个列表
      +
    • “*”号, 将列表中的元素指定重复的次数
      *
      列表与列表不能相乘
  • in 和 not in

    • in
      • 表示用来检查指定元素是否在列表当中,如果 在 返回True,如果不在返回 False
    • not in
      • 表示用来检查指定元素是否不在列表当中,如果 不在 返回True,如果 在 返回 False
  • len() 获取列表中元素的个数

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

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

  • 方法和函数的区别 方法必须通过 对象. 方法() xxx.yyy() zzz()
    import requests
    requests.get()   #方法
    
    [注:max,min,print,input,…,这些是函数 ]
    • s.index(x[ , i [ , j ] ] ) 获取指定函数在列表当中的位置
      练习
      第二个参数 表示查找的起始位置
      第三个参数 表示结束位置
      练习
  • s.count(x) 统计指定元素在列表中出现的次数
    次数

4. 修改列表

  • 通过切片来修改(起始就是给切片的内容重新赋值,但是赋值的内容必须是一个序列)
    修改
  • 通过切片来删除元素
    • 删除元素

      • del list[起始 : 结束]
        删除

      切片删除 2

    • 修改元素

      • 在给切片进行赋值 必须传递一个序列
        可以用三个元素替换序列中的两个元素
        (字符串是序列,整数不是序列)

      修改

      • 起始位置和结束位置都为0,向索引为0 的位置插入元素

      插入

      • 当设置了步长时,序列中的元素的个数必须和切片中元素的个数一致
      • 想要修改不可变序列,将不可变序列强制类型转换成列表
      • xxx = list (xxx)

5. 列表的方法

  • xxx.append(“”)
    向列表最后添加一个元素

  • xxx.insert( 参数1,参数2)
    向列表指定位置插入一个元素, 参数1=要插入的位置, 参数2=要插入的元素

  • xxx.extend([ xx,xx ])
    使用新的序列来扩展当前序列

  • xxx.clear( )
    清空列表

  • xxx.pop(位置)
    根据索引删除并返回指定元素,如果不传索引值就删除最后一个元素

  • xxx.remove( 值 )
    删除指定值,如果相同值的元素有多个,只会删除第一个

  • xxx.reverse()
    反转列表

  • xxx.sort( )
    用来对列表中的元素进行排序
    排序 reverse :True 反序;False正序

6. 遍历列表

  • 遍历列表指的是将列表当中的元素提取出来
6.1 for 循环
  • 通过for循环遍历列表
语法
for 变量 in 序列(遍历的规则):
	代码块

在这里插入图片描述

  • 注意:for循环的代码块会执行多次,序列中有几个元素就会执行几次。每执行一次就会将序列中的一个元素赋值给变量,所以我们可以通过变量来获取列表中的元素
6.2 range(start,stop,step)

start 开始. 计数从start开始默认从0开始 例如 range(5) 等价于range(0,5)

stop 结束. 计数从stop结束 但是不包括stop 例如range(0,5) 结果 [0,1,2,3,4]没有5

step 步长. 默认为1 例如range(5) 等价于 range(0,5,1)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值