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

您的位置:首頁技術文章
文章詳情頁

解決python 在for循環并且pop數組的時候會跳過某些元素的問題

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

今天在學python的時候遇到一個問題,循環一個數組 指定一個數,如果數組內有相同的元素就刪除。

1. 前提是不能新增內存,就在該數組內處理

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)

一開始寫成這樣時候輸出

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

然后我修改了一下 把每一次循環都打出來看看

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]

原因是因為Python中for循環用迭代器實現,而pop方法刪除了當前元素后,被刪除的位置由后面的填補,而循環自動指到下一個元素,也就相當于那個2被跳過了。

網上搜的一些處理方法 比較適合這個的是用

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

輸出

[0, 1, 3, 0, 4]

補充知識:python 中for循環(continue, break, pass)用法

1、continue 跳過當前繼續執行下一個循環

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

解決python 在for循環并且pop數組的時候會跳過某些元素的問題

2、break 直接中斷循環,不再執行

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

解決python 在for循環并且pop數組的時候會跳過某些元素的問題

3、pass 什么都不操作,接著循環

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

解決python 在for循環并且pop數組的時候會跳過某些元素的問題

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持好吧啦網。如有錯誤或未考慮完全的地方歡迎留言討論,望不吝賜教。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 好看的韩国漫画_韩漫在线免费阅读-汗汗漫画 | 设定时间记录电子秤-自动累计储存电子秤-昆山巨天仪器设备有限公司 | 合肥角钢_合肥槽钢_安徽镀锌管厂家-昆瑟商贸有限公司 | 幂简集成 - 品种超全的API接口平台, 一站搜索、试用、集成国内外API接口 | 红立方品牌应急包/急救包加盟,小成本好项目代理_应急/消防/户外用品加盟_应急好项目加盟_新奇特项目招商 - 中红方宁(北京) 供应链有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 全温恒温摇床-水浴气浴恒温摇床-光照恒温培养摇床-常州金坛精达仪器制造有限公司 | 杭州代理记账多少钱-注册公司代办-公司注销流程及费用-杭州福道财务管理咨询有限公司 | pbootcms网站模板|织梦模板|网站源码|jquery建站特效-html5模板网 | Magnescale探规,Magnescale磁栅尺,Magnescale传感器,Magnescale测厚仪,Mitutoyo光栅尺,笔式位移传感器-苏州连达精密量仪有限公司 | 999范文网_优质范文下载写作帮手| 右手官网|右手工业设计|外观设计公司|工业设计公司|产品创新设计|医疗产品结构设计|EMC产品结构设计 | 广州番禺搬家公司_天河黄埔搬家公司_企业工厂搬迁_日式搬家_广州搬家公司_厚道搬迁搬家公司 | 北京浩云律师事务所-法律顾问_企业法务_律师顾问_公司顾问 | 济南玻璃安装_济南玻璃门_济南感应门_济南玻璃隔断_济南玻璃门维修_济南镜片安装_济南肯德基门_济南高隔间-济南凯轩鹏宇玻璃有限公司 | 杰福伦_磁致伸缩位移传感器_线性位移传感器-意大利GEFRAN杰福伦-河南赉威液压科技有限公司 | 广东青藤环境科技有限公司-水质检测 | 河南空气能热水器-洛阳空气能采暖-洛阳太阳能热水工程-洛阳润达高科空气能商行 | 直流电能表-充电桩电能表-导轨式电能表-智能电能表-浙江科为电气有限公司 | 云阳人才网_云阳招聘网_云阳人才市场_云阳人事人才网_云阳人家招聘网_云阳最新招聘信息 | 传递窗_超净|洁净工作台_高效过滤器-传递窗厂家广州梓净公司 | 识禅_对禅的了解,从这里开始 | 网站优化公司_SEO优化_北京关键词百度快速排名-智恒博网络 | 高压管道冲洗清洗机_液压剪叉式升降机平台厂家-林君机电 | 至顶网 | 色谱柱-淋洗液罐-巴罗克试剂槽-巴氏吸管-5ml样品瓶-SBS液氮冻存管-上海希言科学仪器有限公司 | 气动隔膜阀_气动隔膜阀厂家_卫生级隔膜阀价格_浙江浙控阀门有限公司 | 亳州网络公司 - 亳州网站制作 - 亳州网站建设 - 亳州易天科技 | 切铝机-数控切割机-型材切割机-铝型材切割机-【昆山邓氏精密机械有限公司】 | 杭州厂房降温,车间降温设备,车间通风降温,厂房降温方案,杭州嘉友实业爽风品牌 | 应急灯_消防应急灯_应急照明灯_应急灯厂家-大成智慧官网 | 比亚迪叉车-比亚迪电动叉车堆垛车托盘车仓储叉车价格多少钱报价 磁力去毛刺机_去毛刺磁力抛光机_磁力光饰机_磁力滚抛机_精密金属零件去毛刺机厂家-冠古科技 | 锤式粉碎机,医药粉碎机,锥式粉碎机-无锡市迪麦森机械制造有限公司 | ★店家乐|服装销售管理软件|服装店收银系统|内衣店鞋店进销存软件|连锁店管理软件|收银软件手机版|会员管理系统-手机版,云版,App | 土壤养分检测仪|土壤水分|土壤紧实度测定仪|土壤墒情监测系统-土壤仪器网 | 塑料瓶罐_食品塑料瓶_保健品塑料瓶_调味品塑料瓶–东莞市富慷塑料制品有限公司 | 菲希尔X射线测厚仪-菲希尔库伦法测厚仪-无锡骏展仪器有限责任公司 | 开平机_纵剪机厂家_开平机生产厂家|诚信互赢-泰安瑞烨精工机械制造有限公司 | 电液推杆生产厂家|电动推杆|液压推杆-扬州唯升机械有限公司 | 档案密集架,移动密集架,手摇式密集架,吉林档案密集架-厂家直销★价格公道★质量保证 | 热回收盐水机组-反应釜冷水机组-高低温冷水机组-北京蓝海神骏科技有限公司 |