python html5 bootstrap 视频教程
德云社区 门户 IT 编程 编程语言 Python 查看内容

Python2.7.8 列表 list() 语句 for 循环迭代 remove() pop() len() 问题

2016-4-5 11:31| 发布者: digitser| 查看: 1426| 评论: 0|原作者: Python

摘要: Python2.7.8 列表 list() 语句 for 循环迭代 remove() pop() len() 问题 列表、bytearray (字节数组) 对象,支持允许原-位修改对象的额外操作。 其它易变序列类型 (当被添加到语言时) 也应支持这些操作。 字符串、 ...
自动立式分页纸箱赋码系统 ── 全自动 专业 立式分页 瓦楞纸 水性油墨 贴标 喷码 检测系统
Python2.7.8 列表 list() 语句 for 循环迭代 remove() pop() len() 问题

列表、bytearray (字节数组) 对象,支持允许原-位修改对象的额外操作。 其它易变序列类型 (当被添加到语言时) 也应支持这些操作。 字符串、元组是不可变序列类型:这种对象一旦被创建,就不可再修改。 以下定义操作,适于易变序列类型 (其中 x 为任意对象)。


操作
结果
注意事项
s = x
x 替换 si

s[i:j] = t
以可迭代 t 的内容,替换 sij的切片

del s[i:j]
等同 s[i:j] = []

s[i:j:k] = t
t 的那些元素,替换 s[i:j:k] 切片元素
(1)
del s[i:j:k]
从列表移除 s[i:j:k] 切片元素

s.append(x)
等同 s[len(s):len(s)] =[x]
(2)
s.extend(x)
等同 s[len(s):len(s)] =x
(3)
s.count(x)
返回 s == x 的 i 数量

s.index(x[, i[, j]])
返回如 s[k] == x 且 i <= k k值
(4)
s.insert(i, x)
等同 s[i:i] = [x]
(5)
s.pop()
等同 x = s; del s;return x
(6)
s.remove(x)
等同 del s[s.index(x)]
(4)
s.reverse()
原位反向 s
(7)
s.sort([cmp[, key[,reverse]]])
原位排序 s
(7)(8)(9)(10)

迭代清除 remove() 问题
  1. a = list(range(10))
  2. a
  3. [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  4. for b in a:
  5.     a.remove(b)

  6. a
  7. [1, 3, 5, 7, 9]
复制代码

以上代码书写形式,无法完全清除列表内容,最后剩余 [1, 3, 5, 7, 9];原因在于每次移除项时,列表长度发生了变化,相应项也随之移位

迭代清除 pop() 问题

  1. a = list(range(10))
  2. a
  3. [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  4. for b in list(range(len(a))):
  5.     a.pop(b)

  6. Traceback (most recent call last):
  7.   Python Shell, prompt 11, line 2
  8. IndexError: pop index out of range
  9. a
  10. [1, 3, 5, 7, 9]
复制代码

以上代码书写形式,无法完全清除列表内容,最后剩余 [1, 3, 5, 7, 9],且还会出现 IndexError: pop index out of range;原因在于每次移除项时,列表长度发生了变化,相应项也随之移位

迭代清除正确形式

  1. a = list(range(10))
  2. a
  3. [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
  4. for b in list(range(len(a))):
  5.     a.pop()

  6. a
  7. []
复制代码

以上代码书写形式,可完全清除列表内容,最后剩余 [];原因在于移除项时,列表长度虽发生了变化,但每次只弹出 -1 索引项 (即:最后项),所以,不受列表长度变化,相应项移位影响。



请关注 "德云社区" 及其微信公众号,了解相关资讯


版权声明:
本文为独家原创稿件,版权归 德云社区,未经许可不得转载;否则,将追究其法律责任。


路过

雷人

握手

鲜花

鸡蛋
AI人工智能 语音助理 人工翻译 教程

相关阅读

最新评论

相关分类

CSS3 官方中文文档编制 手册教程 人工翻译 更新日志
CSS3 官方中文文档编制 手册教程 人工翻译 更新日志 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[825/2022-07-31]
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译
CSS3 官方中文文档编制 手册教程 帮助文件 人工翻译 CSS3 中文文档编制采用机器辅助 + 全人工翻译,完全采用 数字翻译 的文档翻译流程进行汉化 (未采用任何第 3 方工具),[962/2022-07-31]
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺
SolidWorks 2020 非对称Conic Rho圆角 抽壳出现模型穿刺 标准对称圆角最常用,但有时偶尔也会用到非对称圆角。 特别是模具、五金、电子、手饰、汽车、家具、玩具、等对圆[850/2022-05-25]
NumPy 1.22 官方中文文档编制 手册帮助 更新日志
NumPy 1.22 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采用[547/2022-05-22]
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译
NumPy 1.22 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 NumPy 1.22。 NumPy 1.22 中文文档编制采[614/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志
Pillow 9.1.1 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档编[590/2022-05-22]
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译
Pillow 9.1.1 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Pillow 9.1.1。 Pillow 9.1.1 中文文档[541/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中文[1108/2022-05-22]
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译
PyMuPDF 1.19.6 官方中文文档编制 手册帮助 全人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 PyMuPDF 1.19.6。 PyMuPDF 1.19.6 中[946/2022-05-22]
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译
Qt 6.3.0 官方中文文档编制 手册教程 帮助文件 人工翻译 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制[2406/2022-05-02]
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志
Qt 6.3.0 官方中文文档编制 手册教程 人工翻译更新日志 以后不再上传 en-US 官方原版文档编制,目前上传的最新 zh-CN 人工翻译版本为 Qt 6.3.0。 Qt 6.3.0 中文文档编制采[1996/2022-05-02]
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件
MAGIX Music Maker Premium - 易学易用 功能强大的可视化编曲软件 MAGIX Music Maker 是德国 Magix 出品的可视化编曲软件,功能强大、使用简单、容易上手。 MAGIX Music Ma[1705/2022-04-11]
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议
MQTT - 消息队列遥测技术 M2M机器到机器 IoT物联网 通信协议 MQTT 是 Message Queuing Telemetry Transport 的缩写,中文译为消息队列遥测传输。 MQTT 是 ISO 标准 (ISO/I[586/2022-02-24]
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法
数字 Python IDE 2022 注册机 注册码生成器 附详细破解方法 数字 Python IDE 目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于多版本 多文档 多工程并行[647/2022-02-01]
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法
数字翻译 2022 注册机 注册码生成器 内存破解器 附详细用法 数字翻译目前还在不断研发 进步中,虽不太成熟,但其新理念很有特色 特别适于 HTML 文档本地化 (面向高精度 超[600/2022-02-01]

Archiver|Sitemap|小黑屋|德云社区   

GMT+8, 2024-3-29 14:31 , Processed in 0.037805 second(s), 27 queries .

工业和信息化部: 粤ICP备14079481号-2

技术支持 乐数软件     版权所有 © 2014-2021 德云社区    

返回顶部