0

txtファイルの複数の行を空白なしで1行に接続する方法についてサポートが必要です

次のように、テキストファイルは8行で構成され、各1行は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

4

5 に答える 5

1

ファイルの行をリストに読み込んで、次を使用するだけ''.join()です。

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

この.strip()呼び出しにより、行の先頭と末尾(この場合は改行)からすべての空白が削除されます。

ステートメントでコンマを使用するとprint、改行が省略されるだけでなく、引数の間にスペースが出力されます。

于 2013-01-19T23:30:35.110 に答える
0

ファイルが異常に大きくない場合は、コンテンツ全体を1つの文字列として開くことができます。

content = inFile.read()

テキストの行は、特殊文字で分割されます\n
すべてを1行にしたい場合は、その文字を削除します。

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

\nここでは、すべての文字を空の文字列に置き換えています。

于 2013-01-19T23:29:59.140 に答える
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", "")
于 2013-01-19T23:30:51.843 に答える
0

試す:

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

行は、'\n'文字なしで互いに連結されたtext.txtのすべての行で構成される文字列になります。

于 2013-01-19T23:31:03.130 に答える
0
f = open("file", "r")
print "".join(f.read().split())    # Strips all white-spaces
于 2013-01-19T23:38:28.477 に答える