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 即可。
相关推荐
jyOverQ3 分钟前
我写了一个 CSDN Markdown 图片助手:告别本地图片逐张上传
python·工具·csdn
SomeOtherTime1 小时前
Rust所有权(AI回答)
开发语言·后端·rust
Easyhood1 小时前
Android 开发入门实践(十四):Compose 副作用入门与四个常用 API
android·开发语言·kotlin·android jetpack·compose
白杨尚青2 小时前
C++进阶篇(六):map 和 set 的模拟实现——用红黑树封装 mymap/myset(迭代器 + operator[])
开发语言·c++·迭代器·stl·set·map·红黑树
刘马想放假3 小时前
CANviz 使用指南|Linux 安装、DBC 解码、实时曲线与 J1939 实战
linux·python·websocket
2601_967987374 小时前
python判断变量名不要调用任何函数实现
python·函数·语法·判断·变量名
卷无止境5 小时前
SALib敏感性分析的python库学习笔记
后端·python
饮水桶_T5 小时前
JAVA IO流笔记
开发语言·数据结构·算法
duansamve6 小时前
Python3+Flask+PostgreSQL18+Vue3项目生产环境用docker如何部署?
python·docker·flask
特立独行的猫A6 小时前
少 3 个环节、少 1 次 ABI、少 3500 行代码:cj-tauri 与 Ionic/Capacitor 的鸿蒙桥接机制对比
java·后端·python