python列表元素零的移动
列表元素"零"的移动
描述:
对于一个列表,在保持非零元素相对顺序的同时,将元素中所有的数字0移动到末尾。
例如,获得输入列表 [0, 1, 0, 3, 12],输出 [1, 3, 12, 0, 0]。
方法一代码如下
ls=eval(input())
lt1=[]
lt2=[]
for i in range(len(ls)):if ls[i]==0:lt1.append(0)else:lt2.append(ls[i])
print(lt2+lt1)
使用两个列表,一个存储不等于0的数,一个存储等于0的数。
还有一种很常见的方法,但是准确来说并不正确,能在部分的测试案例中通过,但有了两个以上连续0的存在就会与结果不符。
ls=eval(input())
for i in range(len(ls)):if ls[i]==0:ls.pop(i)ls.append(0)
print(ls)
使用for循环遍历列表,但是在遍历的时候列表自身会发生变化,删除了等于0的数,并在末尾加上一个0。如果有两个0在一起的话,会导致第一个0被删掉,第二个0占据了原本第一个0的位置,逃过了遍历。
运行下面这段代码:
ls=eval(input())
for i in ls:print(i)if i==0:ls.pop(i)ls.append(0)
得到的结果如下:
所以在使用for循环时,最好不要对列表进行删除操作,会影响遍历结果。可以将值赋值给新的列表,不要在原有列表上进行操作。
方法二:
ls=eval(input())
c=0
while 0 in ls:ls.remove(0)c=c+1
for i in range(c):ls.append(0)
print(ls)
查找0时使用while循环,不使用for循环。在计算0的个数时可以在循环里面累加,也可以使用c=ls.count(0)方法计算出列表中0的个数。
python列表元素零的移动相关推荐
- python列表元素零的移动_python列表多行
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 这个列表推导式共有145列: memberdef_list = and std: ...
- python第k序元素查找列表_【Python】第8次练习:列表——程序填空题 -合并队列、列表元素零的移动、列表逆序输出、第K序元素查找...
[Python]第8次练习:列表--程序填空题 -合并队列.列表元素"零"的移动.列表逆序输出.第K序元素查找 1.程序填空题 -合并队列 题目:某班男女两队同学各若干人,男生已按 ...
- python列表元素0的移动_【Python】列表元素零的移动
[Python]列表元素"零"的移动 描述 对于一个列表,在保持非零元素相对顺序的同时,将元素中所有的数字0移动到末尾. ...
- python列表元素都加倍_关于python列表增加元素的三种操作方法
关于python列表增加元素的三种操作方法 1.insert方法,该方法包含两个参数,第一个参数为插入的位置参数,第二个参数为插入内容 a = [0,0,0] b = [1,2,3] a.insert ...
- python列表元素如何求和
python实现列表对应元素求和的两种方法. 方法一:采用zip()方法: 1 2 3 4 5 6 7 8 9 10 11 12 # -*- coding: utf-8 -*- import math ...
- python列表元素交换位置_python删除列表元素5种方法,你会的是错误法还是最优解?...
删除列表元素很多同学想当然的认为不就是循环遍历加上if判断再del吗?真的有这么简单吗? 还是直接上代码看案例吧: import time# 删除下面列表中所有张姓元素,输出的结果应该是['李老大', ...
- python列表元素之和_python实现计算列表元素之和
目标:定义一个数字列表,并计算列表元素之和. 例如: 输入 : [12, 15, 3, 10] 输出 : 40 方法一:total = 0 list1 = [11, 5, 17, 18, 23] fo ...
- python列表元素下标是什么_python列表中元素插入位置总结
python列表中元素插入位置总结 , python中列表去掉最后一个元素 ist.insert(index,obj) 列表与方法之间用点号相隔,括号内需要添入的参数分别是索引和要插入的元素. 要完成 ...
- python列表元素替换的数据结构_列表是Python中的一种数据结构。列表元素无序。...
[综合练习]It has made the headlines that the president's wife threatened her husbands with public exposu ...
最新文章
- Python导出Excel文件
- 注解 java 反射_java注解和反射
- android+包+反编译,简单的Android之apk包反编译方法
- linux加载虚拟sriov网卡,如何配置BroadCOM网卡的SR-IOV功能
- jaVa工程师朱璇_使用QTP对Silverlight应用进行自动化测试的研究与实践
- ASP.NET Core 沉思录 - 结构化日志
- nib和xib的区别
- 算法入门书籍--2022.04.04
- C++之继承探究(十一):多重继承、菱形继承、虚继承、二义性问题及其解决方案
- VirtualBox 安装ghost版windows XP
- C#操作EXCLE表
- 迷你世界甲龙变身机器人_迷你世界X变形金刚双形态皮肤特效,自带双血条,简直无敌...
- pat-A1043:Is it a Binary Search Tree(二叉搜索树和及其镜像树的遍历)
- 通过MFC实现数码管显示功能
- java开发autocad_.NET AutoCAD二次开发之路(四、文字篇)
- JS-SDK使用权限签名算法
- 基于51单片机心形流水灯c语言源程序,51单片机心形流水灯源程序
- beacon帧主要结构
- 【计算机网络】计网学习——总览(超多图+超详解)
- 数据挖掘期末大作业附加题