似乎无法从输入文件中删除空白?

2024-06-17 08:59:35 发布

您现在位置:Python中文网/ 问答频道 /正文

我想弄清楚如何处理一个输入文件,并在输出中不带任何空格的情况下打印出来。你知道吗

我当前的脚本如下所示:

#!/usr/bin/python

kf = open ('keyword.txt', 'r')
sl = open ('syslog.txt', 'r')

for line in kf:
    line.replace('\n', "")
    line.strip()
    print line  

但其输出如下所示:

polkitd

anacron

acpid

rt-kit daemon

goa

AptDaemon

AptDaemon.PackageKit

AptDaemon.Worker

python

有人知道如何删除每个项目之间的空白行吗?你知道吗


Tags: 文件txt脚本forbinusrline情况
3条回答

乔安娜

需要检查的事项:

1)行上是否有除新行“\n”以外的另一种结尾?根据此文件的创建方式,可能还有一个回车符“\r”。Difference between \n and \r?

2)如果不是这样,我建议将文件加载到一个文本编辑器中,该编辑器显示所有字符,并确定没有过滤掉的内容,或者在删除任何内容并查看意外字符之前打印出字符串中每个字符的字符代码。你知道吗

希望有帮助。你知道吗

-马特

replacestrip都返回新对象,而不是更改当前使用的对象,因此代码应该是这样的

line = line.replace(...)
line = line.strip(...)

试着打印repr(line)而不是print line,看看你得到了什么。如果有'\n',请尝试调用line.strip('\n')。另外,试着在print line后面加一个逗号,,就像print line,。你知道吗

相关问题 更多 >