首页 > 解决方案 > 从列表中删除多个空格

问题描述

给定列表:

>>> l1 = ['1,  A Ab','2,B Bc ','3, C Cd ']
  1. 第一个元素之前有 2 个空格A Ab
  2. 第二个元素在 . 之后有 1 个空格B Bc
  3. 第三个元素是 的每边 1 个空格C Cd

想要删除元素值之前/之后出现的 n 个空格。

预期结果:

['1,A Ab','2,B Bc','3,C Cd']

我的尝试:

>>> import re
>>> l2 = [re.sub(r"\s{2,}", "", s) for s in l1]
>>> l2
['1,A Ab', '2,B Bc ', '3, C Cd ']

在第二个和第三个元素中仍然有空格。

标签: pythonpython-2.7

解决方案


使用列表理解。

前任:

l1 = ['1,  A Ab','2,B Bc ','3, C Cd ']
print( [",".join(map(str.strip, i.split(","))) for i in l1] )

输出:

['1,A Ab', '2,B Bc', '3,C Cd']

推荐阅读