python 删除列表里所有空格项的方法总结

yipeiwu_com6年前Python基础

首先,我们来随便写一个带空格的列表:

list1 = ['122','2333','3444',' ','422',' ',' ','54',' ']

相信已经有人尝试过,诸如以下的方式去删掉空格,例如:

# -*- coding:utf-8 -*-
for i in list1:
 if i == ' ':
 list1.remove(' ')
print list1

但是结果你会发现是这样的,它总是不能完全的删完空格,会在末尾留下一个。

方法一:

这个时候,可以尝试把‘=='改为in:

# -*- coding:utf-8 -*-
for i in list1:
 if ' ' in list1:
 list1.remove(' ')
print list1

之前我在网上看过用‘'join的方式,链接找不到了,这种方法它确实能删掉带一个长度的空字符串‘ ',但是对于间隔比较规律的还好,间隔不规律的就不太友好了,并且无论间隔规律与否,它都会生成0长度‘'空字符串的。

方法二:

方法一是后来写这篇文章的时候测试文章最开头那个错误的写法的时候,因为记得不太清,无意中想到了in,结果发现结果是对的,我自己最先想到的方法是这样的,先获取空格的个数,然后遍历,逐个删除:

for i in range(list1.count(' ')):
 list1.remove(' ')

方法三:

然后用了for我就在想可不可以用while,用while怎么写,测试了一下发现果然可以:

while ' ' in list1:
 list1.remove(' ')
print list1

以上是比较早写的了,用的大多是remove,现在学了些优化,然后加上评论里的提示,才发现推导式也可以,感谢了!

这篇python 删除列表里所有空格项的方法总结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

pycharm运行出现ImportError:No module named的解决方法

pycharm运行出现ImportError:No module named的解决方法

今天用实验室的pycharm运行程序的时候发现出现了已安装的模块无法导入的情况,但实际上这个模块我已经在notebook中使用多次了,所以不可能是未安装模块的原因 查了一下原因,应该是...

Python中自定义函数的教程

在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回。 我们以自定义一个求绝对值的m...

python实现单目标、多目标、多尺度、自定义特征的KCF跟踪算法(实例代码)

单目标跟踪: 直接调用opencv中封装的tracker即可。 #!/usr/bin/env python3 # -*- coding: utf-8 -*- """ Created...

总结用Pdb库调试Python的方式及常用的命令

用Pdb调试有多种方式 使用 Pdb调试 Python的程序的方式主要是下面的三种!下面逐一介绍 命令行加-m参数 命令行启动目标程序,加上-m参数,这样调用 testPdb.py的...

Python之列表实现栈的工作功能

问题: python中使用列表实现栈的功能 """ 栈的工作原理 入栈 出栈 查看栈顶元素 栈的长度 栈是否为空 """ stack = [] info = ""...