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 即可。
相关推荐
清水白石0085 小时前
Python 编程实战全景:从基础语法到插件架构、异步性能与工程最佳实践
开发语言·python·架构
yaoxin5211236 小时前
390. Java IO API - WatchDir 示例
java·前端·python
武帝为此6 小时前
【数据清洗缺失值处理】
python·算法·数学建模
zhangchaoxies7 小时前
如何在 Go 中安全复制接口指针所指向的值
jvm·数据库·python
曲幽7 小时前
FastAPI + Pydantic 模型终极实战手册:从能跑就行到固若金汤,这些技巧你一定用得上
python·fastapi·web·model·field·pydantic·validator·basemodel
Halo_tjn7 小时前
Java 基于字符串相关知识点
java·开发语言·算法
梦想的颜色7 小时前
java 利用redis来限制用户频繁点击
java·开发语言
报错小能手7 小时前
Swift 并发 Combine响应式框架
开发语言·ios·swift
计算机软件程序设计8 小时前
Python Flask工程目录解读
python·flask·工程目录解读
Ares-Wang8 小时前
Flask》》 Flask-OpenID 认证、 OpenID Connect (OIDC)
后端·python·flask