Vas*_*ash 1 python whitespace list removing-whitespace
大家好,我是python的新手,想要一些帮助.我有一些示例数据,想知道如何摆脱每个列表中每个字符串的间距.
data = [
['In dolore .'], ['Voluptatum. '],
['Veniam hic non minima. '],
['Dolores Quis enim'],
[' sequi ducimus']
]
print data
Run Code Online (Sandbox Code Playgroud)
我想要的输出:
data = [
['In dolore.'], ['Voluptatum.'],
['Veniam hic non minima.'],
['Dolores Quis enim'],
['sequi ducimus']
]
Run Code Online (Sandbox Code Playgroud)
以下是我认为可行的两种方式,但没有
for i in data:
str = ''.join(data)
final_data = str.replace(" ","")
print final_data
Run Code Online (Sandbox Code Playgroud)
我最后的尝试是这样的:
final_data = ''.join(data)
final_data.replace(" ", "")
print final_data
Run Code Online (Sandbox Code Playgroud)
你可以在这里使用正则表达式
import re
for i in range(len(data)):
data[i][0] = re.sub(r'(\w)\s\s+(\w)', r'\1 \2', data[i][0])
data[i][0] = re.sub(r'\s\s+', r'', data[i][0])
data[i][0] = re.sub(r"(\w)\s([.])", r"\1\2", dat[i][0])
Run Code Online (Sandbox Code Playgroud)
正则表达式模式\s\s+匹配2个或更多空格字符的所有组.如上所述,如果两个单词之间的空格超过1,则会消除单词之间的间距.将r'\w\s\s+\w', r'\1 \2'通过消除字边界之间的空间有一个空格需要照顾那个.
还要注意,这是data[i][0]因为奇怪的是数据是一个列表列表.