python修改列表问题总结
来源:互联网 发布:facebook免费翻墙软件 编辑:程序博客网 时间:2024/06/07 10:09
有时候可能要修改python的列表,通过遍历整个列表,修改值。但是这里有一个问题。
直接看代码吧。
num_list =range(5)for item in num_list:item = item*2print num_list
这样循环取里面的元素,修改里面的值,感觉 是没有什么问题。 其实结果 没有被修改,原因item 的id 已经不是原来的id,看下面的截图
那么问题该如何修改list 里面元素的值呢?
#方法一for i, item in enumerate(num_list):num_list[i] =num_list[i]*2#方法二for i in range(len(num_list)):num_list[i] = num_list[i]*2
这两种方法类似,就是拿到索引值,直接通过索引,在修改里面的值,就可以了。
网上 查了一些方法,有一篇
为什么python中不建议在for循环中修改列表?https://www.zhihu.com/question/49098374 有详细介绍
参考文章 ,在遍历列表,如果要删除也要小心。可以先复制一份,在进行操作。例如:
num_list = [1, 2, 3, 4, 5]for item in num_list[:]: if item == 2: num_list.remove(item) else: print(item)print(num_list)
如果要删除某个元素, 可以先复制一份。对复制的列表 遍历,找到相关条件,list.remove(value) 把它删除,这样做比较安全。
总结: 队列操作,特别for 循环,要格外注意,删除数据的时候,一定不要对列表直接操作。原因上面的链接,说的比较清楚了。
分享快乐,留住感动。 ----Frank Sat Dec 16 13:41:19 CST 2017
阅读全文
0 0
- python修改列表问题总结
- python 列表操作总结
- python 列表小总结
- python列表总结
- Python列表操作总结
- Python 列表总结
- Python 修改列表中的元素
- python列表的问题
- Python问题列表
- Python 列表(list) 总结
- 00102 python列表操作总结
- python 列表的使用总结
- Python中如何禁止函数修改列表
- sonarqube问题修改总结
- 【python】列表的复制问题
- python-002 数组列表问题
- python 列表解析 列表中的列表append问题
- python列表和字典的方法总结
- 深度学习笔记:正则化 1
- Java多线程编程
- lintcode&九章算法——Lintcode No.82 落单的数 ? 待解决
- Kali Linux------其他信息收集手段
- less详细介绍
- python修改列表问题总结
- python学习二--序列
- gui R
- IT风险投资
- Java中的super与this
- shell中使用hadoop进行结果文件的合并的命令
- mysql数据库表中删除某一列值重复的全部行和只留一条
- [LUOGU1226] 取余运算||快速幂
- Kali Linux------Redis安装与配置