3

您好,我正在制作一个接收文件的 python 程序。我希望将其设置为单个字符串。我目前的代码是:

with open('myfile.txt') as f:
    title = f.readline().strip();
    content = f.readlines();

文本文件(简化)是:

Title of Document
asdfad
adfadadf
adfadaf
adfadfad

我想去掉标题(我的程序就是这样做的),然后把剩下的变成一个字符串。现在的输出是:

['asdfad\n', 'adfadadf\n', ect...]

而且我要:

asdfadadfadadf ect... 

我是 python 新手,我花了一些时间试图解决这个问题,但我找不到有效的解决方案。任何帮助,将不胜感激!

4

4 回答 4

4

你可以这样做:

with open('/tmp/test.txt') as f:
    title=f.next()       # strip title line
    data=''.join(line.rstrip() for line in f)
于 2013-10-13T22:48:15.740 回答
0

用于list.pop(0)从内容中删除第一行。

然后str.join(iterable)。您还需要去掉换行符。

content.pop(0)
done = "".join([l.strip() for l in content])
print done
于 2013-10-13T22:44:23.810 回答
0

另一种选择是读取整个文件,然后删除换行符而不是连接在一起:

with open('somefile') as fin:
    next(fin, None) # ignore first line
    one_big_string = fin.read().replace('\n', '')
于 2013-10-13T22:58:34.910 回答
-1

如果您想将文件的其余部分放在一个块中,只需调用该read()函数:

with open('myfile.txt') as f:
    title = f.readline().strip()
    content = f.read()

这将读取文件,直到遇到 EOF。

于 2013-10-13T22:47:05.830 回答