如何将文本文件中的行(字符)输出为单行

时间:2013-01-19 23:27:35

标签: python text printing

我需要帮助来解决如何将txt文件中的多行连接成一行而不使用空格

文本文件由8行组成,每行包含80个字符,如下所示:

a busy cat http://im33.gulfup.com/HMGw2.jpg

以下是我使用的代码,但我的问题是我无法将所有行连接起来之间没有空格:

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])

a busy cat http://im33.gulfup.com/XfXJ1.jpg

5 个答案:

答案 0 :(得分:1)

只需将文件行读入列表并使用''.join()

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

.strip()调用会从行的开头和结尾删除所有空格,在本例中为换行符。

使用带有print语句的逗号不仅仅省略换行符,还会在参数之间打印一个空格。

答案 1 :(得分:0)

如果您的文件不是特别大,您可以将整个内容打开为一个字符串。

content = inFile.read()

文字行由特殊字符\n分割 如果您想要一行中的所有内容,请删除该字符。

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

在这里,我用空字符串替换每个\n字符。

答案 2 :(得分:0)

infile = open("text.txt", "r")
lines = infile.readlines()
merged = ''.join(lines).replace("́\n", "")

甚至更好

infile = open("text.txt", "r")
lines = infile.read()
text = lines.replace("\n", "")

答案 3 :(得分:0)

尝试:

lines = ''.join(open("text.txt").read().splitlines())

行将是一个字符串,由text.txt中的所有行组成,它们彼此连接而没有'\ n'字符。

答案 4 :(得分:0)

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