oeasy Python 115 列表弹栈用pop删除指定索引

  • 这是 oeasy 系统化 Python 教程,从基础一步步讲,扎实、完整、不跳步。愿意花时间学,就能真正学会。

列表_删除指定列表项_弹栈_pop

回忆

  • 上次我们了解了
  • 定点插入 insert
  • 相对原来的 追加append
  • 排好序之后
  • 想要 保持有序
  • 需要 insert
  • ​定点​ 插入
  • 可以 ​定点​ 删除吗?
定点删除
  • 这方法
  • 按照索引 删除列表项
  • 名字 叫 pop
  • pop 啥意思?
pop
  • pop 最开始时拟声词
  • 后来也指爆发的东西
  • 或者流行的东西
  • popular
  • pop怎么用呢?
删除
  • 指定删除第 2 个列表项
  • 第2个列表项为 2

    nl = list(range(0, 5))
    print(nl)
    nl.pop(2)
    print(nl)

  • pop方法

  • 返回第2个列表项
  • 列表项 为 2
  • 删除成功
  • 这个方法 和 del关键字
  • 不是​一样​吗?
del
  • 删除索引为2的列表项

    nl = list(range(0, 5))
    print(nl)
    del nl[2]
    print(nl)

  • 可以删除

  • 甚至还可以切片删除

    del nl[-2:]
    nl

  • 切片删除成功

  • 有了 ​del​ 为啥还要有​pop​呢?
提问
  • 类型不同
  • del 是
  • 通用关键字
  • 不止删除 列表项和切片
  • pop 是
  • list类 的方法
默认参数
  • 如果pop方法 没有参数
  • ​如何​呢?

    nl = list(range(0, 5))
    print(nl)
    nl.pop()
    print(nl)

  • 默认参数 弹的是

  • ​最后一个​
  • default last
  • 为啥是​最后一个​
pop弹栈
复制代码
help(list.pop)
  • pop的 index参数
  • 默认值 是 -1
  • -1 不就是
  • 最后一项 的 索引 吗?!
  • 这 效果 叫
  • 弹栈
  • pop the stack
列表的pop
复制代码
nl = list(range(3))
nl
nl.pop()
nl
nl.pop()
nl
nl.pop()
nl
nl.pop()
nl
  • index 默认值 是 -1
  • 默认删 的是 最后一个
  • pop 和 remove
  • ​什么​区别呢?
返回值
复制代码
cl = list("oeasy")
cl
cl.pop(2)
cl
cl.remove("o")
cl
  • pop 按照位置删
  • 并返回列表项的值
  • remove 按照值删
  • 没有返回值
  • remove 和 pop
  • 都是 list类的 成员方法
删除的总结

|----------------|-------------|
| 方法/关键字 | 功能描述 |
| ​​remove()​​ | 删首个匹配指定值的项 |
| ​​pop()​​ | 删 指定索引 |
| ​​del​​ | 删 指定索引/切片范围 |
| ​​clear()​​ | 删列表所有项 |

  • 现在list 所有的方法 我们都见过了
list方法总结
  • 去总结吧
总结
  • 这次我们了解了
  1. 按索引 删除 pop
  • 按值删除 remove
  1. 按索引 定点插入 insert
  • 排好序 之后 可以​打乱​顺序吗?
  • 下次再说 👋
  • 本文来自 oeasy Python 系统教程。
  • 想完整、扎实学 Python,
  • 搜索 oeasy 即可。
相关推荐
maxmaxma17 小时前
ROS2机器人少年创客营:Python第三课
开发语言·python·机器人·ros2
Derrick__117 小时前
Android混淆和加密技术
android·jvm·python
J2虾虾18 小时前
Java使用jcifs读取Windows的共享文件
java·开发语言·windows
gzroy18 小时前
Dify插件开发--Markdown+Mermaid转Docx
python·dify插件
421!18 小时前
C 语言学习笔记——11(函数指针与指针函数)
c语言·开发语言·笔记·单片机·学习
Dxy123931021618 小时前
Python如何使用正则判断是否是姓名
数据库·python·mysql
cch891818 小时前
汇编与C语言:底层对话VS高效指挥
c语言·开发语言·汇编
♪-Interpretation18 小时前
第七节:Python的内置容器
开发语言·python
551只玄猫18 小时前
【数学建模 matlab 实验报告8】回归分析
开发语言·数学建模·matlab·课程设计·实验报告
天若有情67318 小时前
Python精神折磨系列(完整11集·无断层版)
数据库·python·算法