电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術(shù)文章
文章詳情頁

解決python 在for循環(huán)并且pop數(shù)組的時(shí)候會跳過某些元素的問題

瀏覽:109日期:2022-07-02 13:54:56

今天在學(xué)python的時(shí)候遇到一個(gè)問題,循環(huán)一個(gè)數(shù)組 指定一個(gè)數(shù),如果數(shù)組內(nèi)有相同的元素就刪除。

1. 前提是不能新增內(nèi)存,就在該數(shù)組內(nèi)處理

nums = [0,1,2,2,3,0,4,2]val = 2for i in nums: if(i == val): idx = nums.index(i) nums.pop(idx)print(nums)

一開始寫成這樣時(shí)候輸出

[0, 1, 2, 3, 0, 4] //中間的2居然沒有刪除

然后我修改了一下 把每一次循環(huán)都打出來看看

0loop [0, 1, 2, 2, 3, 0, 4, 2]1loop [0, 1, 2, 2, 3, 0, 4, 2]2loop [0, 1, 2, 3, 0, 4, 2]//這里被跳過了3loop [0, 1, 2, 3, 0, 4, 2]4loop [0, 1, 2, 3, 0, 4, 2]5loop [0, 1, 2, 3, 0, 4, 2]6loop [0, 1, 2, 3, 0, 4]

原因是因?yàn)镻ython中for循環(huán)用迭代器實(shí)現(xiàn),而pop方法刪除了當(dāng)前元素后,被刪除的位置由后面的填補(bǔ),而循環(huán)自動(dòng)指到下一個(gè)元素,也就相當(dāng)于那個(gè)2被跳過了。

網(wǎng)上搜的一些處理方法 比較適合這個(gè)的是用

for i in nums[:]: //在這里nums[:]相當(dāng)于復(fù)制了一份,但是并不是同一份。 if(i == val): idx = nums.index(i) nums.pop(idx)

輸出

[0, 1, 3, 0, 4]

補(bǔ)充知識:python 中for循環(huán)(continue, break, pass)用法

1、continue 跳過當(dāng)前繼續(xù)執(zhí)行下一個(gè)循環(huán)

l = [’a’,’b’,’c’,’d’,’e’]for i in l: #i遍歷l列表中的每一個(gè)元素 if i == ’c’: continue #continue以下的代碼不執(zhí)行直接進(jìn)入下一個(gè)循環(huán) print(i)

解決python 在for循環(huán)并且pop數(shù)組的時(shí)候會跳過某些元素的問題

2、break 直接中斷循環(huán),不再執(zhí)行

l = [’a’,’b’,’c’,’d’,’e’]for i in l: if i == ’c’: break #break直接跳出循環(huán),break以下代碼全部不執(zhí)行 print(i)

解決python 在for循環(huán)并且pop數(shù)組的時(shí)候會跳過某些元素的問題

3、pass 什么都不操作,接著循環(huán)

l = [’a’,’b’,’c’,’d’,’e’]for i in l: #i遍歷l列表中的每一個(gè)元素 if i == ’c’: pass print(i)

解決python 在for循環(huán)并且pop數(shù)組的時(shí)候會跳過某些元素的問題

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。如有錯(cuò)誤或未考慮完全的地方歡迎留言討論,望不吝賜教。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: AGV无人叉车_激光叉车AGV_仓储AGV小车_AGV无人搬运车-南昌IKV机器人有限公司[官网] | 样品瓶(色谱样品瓶)百科-浙江哈迈科技有限公司 | 长沙印刷厂-包装印刷-画册印刷厂家-湖南省日大彩色印务有限公司 青州搬家公司电话_青州搬家公司哪家好「鸿喜」青州搬家 | 安平县鑫川金属丝网制品有限公司,防风抑尘网,单峰防风抑尘,不锈钢防风抑尘网,铝板防风抑尘网,镀铝锌防风抑尘网 | 天然鹅卵石滤料厂家-锰砂滤料-石英砂滤料-巩义东枫净水 | 大型低温冷却液循环泵-低温水槽冷阱「厂家品牌」京华仪器_京华仪器 | 机械加工_绞车配件_立式离心机_减速机-洛阳三永机械厂 | 全自动包装机_灌装机生产厂家-迈驰包装设备有限公司 | 南溪在线-南溪招聘找工作、找房子、找对象,南溪综合生活信息门户! | 杭州网络公司_百度SEO优化-外贸网络推广_抖音小程序开发-杭州乐软科技有限公司 | 电动球阀_不锈钢电动球阀_电动三通球阀_电动调节球阀_上海湖泉阀门有限公司 | 钢格栅板_钢格板网_格栅板-做专业的热镀锌钢格栅板厂家-安平县迎瑞丝网制造有限公司 | 软装设计-提供软装装饰和软装配饰及软装陈设的软装设计公司 | 重庆磨床过滤机,重庆纸带过滤机,机床伸缩钣金,重庆机床钣金护罩-重庆达鸿兴精密机械制造有限公司 | 纸张环压仪-纸张平滑度仪-杭州纸邦自动化技术有限公司 | 成都装修公司-成都装修设计公司推荐-成都朗煜装饰公司 | 垃圾处理设备_餐厨垃圾处理设备_厨余垃圾处理设备_果蔬垃圾处理设备-深圳市三盛环保科技有限公司 | 阴离子_阳离子聚丙烯酰胺厂家_聚合氯化铝价格_水处理絮凝剂_巩义市江源净水材料有限公司 | SMN-1/SMN-A ABB抽屉开关柜触头夹紧力检测仪-SMN-B/SMN-C-上海徐吉 | 热熔胶网膜|pes热熔网膜价格|eva热熔胶膜|热熔胶膜|tpu热熔胶膜厂家-苏州惠洋胶粘制品有限公司 | FFU_空气初效|中效|高效过滤器_空调过滤网-广州梓净净化设备有限公司 | PC构件-PC预制构件-构件设计-建筑预制构件-PC构件厂-锦萧新材料科技(浙江)股份有限公司 | YAGEO国巨电容|贴片电阻|电容价格|三星代理商-深圳市巨优电子有限公司 | CPSE安博会 | 彭世修脚_修脚加盟_彭世修脚加盟_彭世足疗加盟_足疗加盟连锁_彭世修脚技术培训_彭世足疗 | 银川美容培训-美睫美甲培训-彩妆纹绣培训-新娘化妆-学化妆-宁夏倍莱妮职业技能培训学校有限公司 临时厕所租赁_玻璃钢厕所租赁_蹲式|坐式厕所出租-北京慧海通 | 上海公众号开发-公众号代运营公司-做公众号的公司企业服务商-咏熠软件 | 钢格板|镀锌钢格板|热镀锌钢格板|格栅板|钢格板|钢格栅板|热浸锌钢格板|平台钢格板|镀锌钢格栅板|热镀锌钢格栅板|平台钢格栅板|不锈钢钢格栅板 - 专业钢格板厂家 | 奇酷教育-Python培训|UI培训|WEB大前端培训|Unity3D培训|HTML5培训|人工智能培训|JAVA开发的教育品牌 | 钢制暖气片散热器_天津钢制暖气片_卡麦罗散热器厂家 | 蔬菜清洗机_环速洗菜机_异物去除清洗机_蔬菜清洗机_商用洗菜机 - 环速科技有限公司 | 低温等离子清洗机(双气路进口)-嘉润万丰 | 广东西屋电气有限公司-广东西屋电气有限公司 | 机房监控|动环监控|动力环境监控系统方案产品定制厂家 - 迈世OMARA | 不锈钢列管式冷凝器,换热器厂家-无锡飞尔诺环境工程有限公司 | 美甲贴片-指甲贴片-穿戴美甲-假指甲厂家--薇丝黛拉 | 磁力轮,磁力联轴器,磁齿轮,钕铁硼磁铁-北京磁运达厂家 | 拉力机-万能试验机-材料拉伸试验机-电子拉力机-拉力试验机厂家-冲击试验机-苏州皖仪实验仪器有限公司 | 石家庄小程序开发_小程序开发公司_APP开发_网站制作-石家庄乘航网络科技有限公司 | 防水试验机_防水测试设备_防水试验装置_淋雨试验箱-广州岳信试验设备有限公司 | 南京PVC快速门厂家南京快速卷帘门_南京pvc快速门_世界500强企业国内供应商_南京美高门业 |