如何将文本文件中的行输出为一行

0 投票
5 回答
2329 浏览
提问于 2025-04-17 13:16

我需要帮助,想知道怎么把一个文本文件里的多行内容合并成一行,而且中间不能有空格

这个文本文件有8行,每行有80个字符,具体情况如下:

一只忙碌的猫
(来源: gulfup.com)

这是我用的代码,但我的问题是,我无法把所有行连接在一起,而且中间没有空格:

inFile = open ("text.txt","r") # open the text file
line1 = inFile.readline() # read the first line from the text.txt file
line2 = inFile.readline() # read the second line from the text.txt file
line3 = inFile.readline()
line4 = inFile.readline()
line5 = inFile.readline()
line6 = inFile.readline()
line7 = inFile.readline()
line8 = inFile.readline()

print (line1.split("\n")[0], # split each line and print it --- My proplem in this code!
       line2.split("\n")[0],
       line3.split("\n")[0],
       line4.split("\n")[0],
       line5.split("\n")[0],
       line6.split("\n")[0],
       line7.split("\n")[0],
       line8.split("\n")[0])

一只忙碌的猫
(来源: gulfup.com)

5 个回答

0
f = open("file", "r")
print "".join(f.read().split())    # Strips all white-spaces

当然可以!请把你想要翻译的内容发给我,我会帮你用简单易懂的语言解释清楚。

1

只需要把文件的每一行读进一个列表,然后用 ''.join() 来连接它们:

with open ("text.txt","r") as inFile:
    lines = [l.strip() for l in inFile]
    print ''.join(lines)

这里的 .strip() 是用来去掉每行开头和结尾的空白字符,包括换行符。

print 语句中使用逗号,不仅仅是为了不换行,它还会在输出的内容之间加一个空格。

0

如果你的文件不是特别大,你可以把里面的所有内容一次性读成一个字符串。

content = inFile.read()

文本中的每一行是通过一个特殊的字符来分开的,这个字符是 \n
如果你想把所有内容放在一行上,就需要把这个字符去掉。

oneLine = content.replace('\n', '')

在这里,我是把每个 \n 字符替换成了一个空字符串,也就是把它去掉了。

撰写回答