我有下面的代码,它从多个文件中读取数据,解析得到的行,并打印结果:
import os
import re
files=[]
pars=[]
for i in os.listdir('path_to_dir_with_files'):
files.append(i)
for f in files:
with open('path_to_dir_with_files'+str(f), 'r') as a:
pars.append(re.sub('someword=|\,.*|\#.*','',a.read()))
for k in pars:
print k
但是我在输出中遇到了多个换行符的问题:
test1
test2
我希望获得下一个结果,而不是输出中有空行:
test1
test2
等等等等。
我尝试使用正则表达式进行操作:
pars.append(re.sub('someword=|\,.*|\#.*|^\n$','',a.read()))
但是它不起作用。我也尝试了使用strip()、rstrip()和replace,但都不起作用。
f
是文件名而不是内容。re.sub
会将与第一个参数匹配的内容替换为第二个参数中的内容。请查看文档并尝试一下。 - Kris