Python 列表中去除空格

1 投票
4 回答
567 浏览
提问于 2025-04-17 07:58

我有这个字符串:

"3a.24.5t.5a  4     1743 3150924      2786 0"

用这段代码:

for i in flines:
    ll = re.findall(r'\.?\w+', i)
    print ll

我得到的是:

['3a.', '24.', '5t.', '5a', '4', '1743', '3150924', '2786', '0']

我需要的是:

['3a.24.5t.5a', '4', '1743', '3150924', '2786', '0']

谢谢

4 个回答

1

如果使用split这个方法不太符合你的需求:

>>> import re
>>> re.findall(r'\S+',"3a.24.5t.5a  4     1743 3150924      2786 0")
['3a.24.5t.5a', '4', '1743', '3150924', '2786', '0']
7

你有没有试过不使用正则表达式,直接用split这个方法呢?

>>> x="3a.24.5t.5a  4     1743 3150924      2786 0"
>>> x.split()
['3a.24.5t.5a', '4', '1743', '3150924', '2786', '0']

或者根据你的代码来做

for i in flines:
    ll = i.split()
    print ll
3

使用 split() 方法:

>>> ll = "3a.24.5t.5a  4     1743 3150924      2786 0".split()
>>> ll
['3a.24.5t.5a', '4', '1743', '3150924', '2786', '0']

撰写回答