源代码:
import random
ls = [random.randint(1,100) for i in range(50)]
print(ls)
for i in ls:
if i%2==1:
print(i)
ls.remove(i)
print(ls)
问题就是:编写程序,生成包含50个随机整数的列表,然后删除其中所有的奇数。
随机生成的列表内容是这样的。
[29, 32, 31, 22, 56, 20, 19, 14, 29, 82, 40, 60, 19, 44, 82, 59, 13, 45, 4, 5, 21, 13, 30, 79, 28,
73, 10, 60, 74, 84, 92, 4, 20, 78, 90, 70, 16, 72, 38, 30, 70, 95, 89, 22, 26, 22, 44, 36, 57, 9]
输出的结果是这样的,其中还是有一些没有清理干净的奇数。
[32, 22, 56, 20, 14, 82, 40, 60, 44, 82, 4, 21, 13, 30, 28, 10, 60, 74, 84, 92, 4, 20, 78, 90, 70,
16, 72, 38, 30, 70, 89, 22, 26, 22, 44, 36, 9]
这样的话,就是代码的问题了,所以矛头都指向了一处,那就是remove函数的使用。
remove函数:该方法没有返回值但是会移除列表中的某个值的第一个匹配项。
这是另一个测试对象:
生成的列表:
[57, 79, 97, 70, 85, 36, 2, 46, 75, 99, 95, 34, 31, 71, 95, 10, 69, 20, 16, 70, 72, 4, 43, 22, 32,
4, 21, 75, 60, 25, 12, 66, 61, 92, 51, 61, 33, 16, 68, 9, 92, 63, 79, 37, 46, 32, 67, 13, 56, 63]
打印输出的元素(中间涉及元素的删除)
57
97
85
2
46
75
95
31
95
69
16
70
72
4
43
32
4
21
60
25
66
61
51
33
68
9
63
37
32
67
56
63
删除后的列表,显然是没有清理干净。
[79, 70, 36, 2, 46, 99, 34, 71, 10, 20, 16, 70, 72, 4, 22, 32, 4, 75, 60, 12, 66, 92, 61, 16, 68,
92, 79, 46, 32, 13, 56]
从以上的测试结果看出,举例来说,由于第一个元素57是奇数,remove之后,57被删除之后,57就不会第一位了,这个时
候79是成为列表的第一位,但是遍历时候的索引位置会继续往下找,也就是说循环认为第一个数已经判断过了,但是这个时
候第一个数字和原来的第一个数字不是同一个了,这个时候就会出现奇数没有被删除的现象。
解决方法不止一种,由于自己是小白,给出一种很low的解决方案:
import random
ls = [random.randint(1,100) for i in range(50)]
resultls = []
for i in ls:
if i%2==0:
resultls.append(i)
print(resultls)
将所有的偶数装到另一个列表中就能实现“类似删除的效果”
相关推荐
C++实现SM4国密算法实战指南
通过以上实现,开发者可以快速在C++项目中集成SM4国密算法,满足金融、政务等领域的安全需求。实际部署时建议通过国家密码管理局的合规性检测,并定期更新密钥管理策略。库(支持国密算法),需提前安装并配置开发环境。
python删除列表中的偶数_从奇数/偶数Python列表中删除偶数/奇数
我试图更好地理解Python中的列表理解.我在代码战中完成了一个在线挑战,并提供了一个相当不优雅的解决方案,如下所示.挑战是:>给出偶数和一个奇数的列表,返回奇数>给出一个奇数和一个偶数的列表,返回偶数我(不优雅)的解决方案是:def find_outlier(integers):o = []e = []for i in integers:if i % 2 == 0:e.append(i)else...
从零到一:YOLOv11高帧率模型在RDK X5上的ONNX转换与部署实战
本文详细介绍了将最新的YOLOv11高帧率模型部署到地平线RDK X5开发板的完整实战流程。内容涵盖从PyTorch模型导出ONNX、地平线工具链环境配置与模型量化编译,到编写高效的板端推理代码,并针对高帧率目标进行了后处理优化。通过实战避坑指南,帮助开发者在RDK X5上实现30FPS以上的实时目标检测。
python随机生成10个奇数_用python实现随机生成三个有十个元素的数组把三个合并成一个数组挑出其中的奇数和偶数没有重复...
展开全部#coding=utf-8'''Created on 2012-6-4@author: Administrator'''import randomdef test():minNum = 0#随机2113数起始maxNum = 999999#随机数最大5261#随机生成三个序列,且为整数list1 = [random.randint(minNum, maxNum) for i in xran...
ACM论文LaTeX模板解析(三)| 文章顶部信息(Top matter))Part 1
文章顶部信息(Top matter))Part 1,文章类型、作者信息等
LabVIEW多设备采集实战:1个程序同时控制3个RS485 Modbus仪表
本文详细介绍了如何使用LabVIEW实现多设备RS485 Modbus同步采集,涵盖硬件架构设计、多线程通信框架搭建、数据帧解析技巧及性能优化策略。通过实际项目案例,展示如何解决端口冲突、数据解析错误等工业自动化常见问题,提升采集系统实时性与可靠性。
【python编程设计练习题】
1.编写程序,生成10个随机整数,其中的奇数相加,偶数相加,结果进行输出两个和。 import random number = random.sample(range(1,100),10) print(number) even,odd = [],[] for x in number: if x % 2 == 0: even.append(x) elif x % 2 != 0: odd.append(x) print( f""" 奇数和:{sum(odd).
【5G NB-IoT NTN】3GPP R17 NB-IoT NTN介绍_nbiot ntn
在3GPP R17协议中,将NB-IoT集成到了NTN(非陆地网络,即卫星通信)中,并定义了一个系统架构。在这个架构中包括一个可配置再生payload的低轨道(LEO)卫星,这意味着该卫星可以执行传统基站的全部或部分功能。该系统架构还可以适配同步轨道(GEO)卫星,这些卫星与LEO卫星类似,也可以配置再生payload。系统高度范围轨道波束覆盖范围LEO300~1500km绕地球转100~1000kmGEO35786km与地球自转同步200~3500km。
python删除列表中的偶数_Python:从列表中删除奇数
我写了一个函数来从列表中删除奇数,就像这样:def remove_odd(l):for i in l:if i % 2 != 0:l.remove(i)print lreturn lremove_odd([4,5,4])remove_odd([4,5,4,7,9,11])remove_odd([4,5,4,7,9,11,12,13])它返回:[4, 4][4, 4, 9][4, 4, 9, 12]...
200SMART PLC时间不准?手把手教你用MCGS触摸屏实现自动校时(附完整代码)
本文针对西门子200SMART PLC时钟不准的常见问题,提供了一套基于MCGS触摸屏的自动校时解决方案。文章详细阐述了时钟偏差的根源、时间同步方案的技术选型,并手把手指导如何配置MCGS与PLC的通信,以及编写完整的PLC时间读取、转换与设置代码,最终实现稳定可靠的自动时间同步功能。
国家医保移动支付国密算法SM2签名验签、SM4加解密DLL
DLL,非.net开发,所以无需安装配置,直接程序引用开发即可,支持各类开发语言。已知省份有广西、贵州、安徽、河北、黑龙江、湖南、吉林、江苏、四川、新疆等各地方。国家医保移动支付国密算法SM2签名验签、SM4加解密DLL。//SM4加密与解密。支持医保移动支付(国家统一版),//SM2签名与验签。
随机生成100个整数存入一个顺序表,整数范围在[100,200)之间,输出表中所有元素;然后去掉其中所有的偶数,输出表中所有元素。
题目:随机生成100个整数存入一个顺序表,整数范围在[100,200)之间,输出表中所有元素;然后去掉其中所有的偶数,输出表中所有元素。
理想L9高通QAM8797座舱域控制器全拆解|全网独家复现 硬件架构升级、电源散热优化、多屏低延迟交互、车机系统赋能高端智能座舱落地
随着智能汽车向舱驾一体、全域智能化、多模交互方向迭代,传统单一功能座舱芯片已无法满足多屏高刷渲染、全车AI语音、车内视觉感知、高速车载通信的叠加算力需求。2026款全新理想L9作为旗舰级智能SUV,全面搭载高通新一代旗舰座舱域控制器QAM8797,搭配自研马赫M100 AI芯片、国产车规主控芯片,构建起高性能、高可靠、低延迟的车载中央计算平台。
删除列表中某些数据,如何用循环做到删准确
场景:给出一个列表li = [1,2,3,4,6,5,8,12], 如何剔除掉列表中的偶数? 第一种方法:找出要保留的元素,放到临时列表中,再将临时列表赋值给原来的列表。 优点:简单,不易错 缺点:多一个临时列表,代码量增多,占用内存空间 li = [1,2,3,4,6,5,8,12] temp = [] # 临时列表 for i in li: if i % 2 != 0: temp.append(i) li = temp print(li) 结果为[1, 3,
IEM模型,地表粗糙度模拟
利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟
假人有限元模型
假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用
【练习题】python列表
代码作业
TMS_WebGMaps_1.9.8.0_Full_Source
TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder
列表练习题1
列表练习
IDEA的使用指南
IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.
day4-列表作业
列表作业
day7-列表作业
day7-列表作业
day7-列表作业1
例如: scores = [45, 60, 89, 30, 12, 59, 99, 80, 71, 66] 删除后: scores = [60, 89, 99, 80, 71, 66]例如: list1 = [10, 23, 45, 67, 91] 输入: 50 -> list1 = [10, 23, 45, 50, 67, 91]合并后的结果: [9, 10, 23, 38, 39, 41, 52, 55, 55, 70, 80]已知一个数字列表,将列表中所有元素乘以2。
day6-列表作业
python
一道Python初学者常犯错误解析
本文重点介绍了在Python中删除列表元素时初学者容易犯的低级错误,并针对性的提出了两种解决方法,可以更加灵活和高效的处理更大规模的数据列表。嗯嗯,您学废了嘛?
day6-列表作业(1)
提木
day4列表作业
day4列表作业
列表的解析与应用
python列表的练习与应用
《python程序设计教程》第4章 常用数据结构 习题4答案
《python程序设计教程》第4章 常用数据结构 习题4答案
1487



被折叠的 条评论
为什么被折叠?



