[英]Convert spaces to newlines in text file using Python
我有一個文本文件,如下所示:
15.9 17.2 18.6 10.5
我想用Python編輯這個文件,看起來像這樣:
15.9
17.2
18.6
10.5
這意味着我需要用換行符替換空格字符串並保存文本。
我試過這個,但它不起作用:
f = open("testfile.txt", "w")
for line in f:
if ' ' in line:
line2 = line.replace(' ' , '\n')
print(line2)
for i in line2:
f.write(line2(i))
f.close
對於打印line2
已經工作,但我沒有得到與換行符替換空格的新文本文件。
如何解決問題並產生所需的輸出?
with open("testfile.txt", "r") as r:
with open("testfile_new.txt", "w") as w:
w.write(r.read(.replace(' ' , '\n'))
試着這樣做
f = open("testfile.txt", "r")
text=f.read()
f.close()
f=open("testfile.txt", "w+")
text2=''
if ' ' in text:
text2 = text.replace(' ' , '\n')
print(text2)
f.write(text2)
f.close()
string = string.replace('\n', '').replace('\r', '')
首先: f.close()不存在。
其次:嘗試上面的代碼。 它將空格替換為新線。
例:
with open("file1.txt", "r") as read_file:
with open("file2.txt", "w") as write_file:
write_file.write(read_file.read().replace(" ", '\n'))
file1.txt的內容:
15.9 17.2 18.6 10.5
file2.txt的內容:
15.9
17.2
18.6
10.5
注意:
或者您可以使用split
和join
方法而不是替換。
write_file.write("\n".join(read_file.read().split()))
將str.split
與str.join
str.split
使用
例如:
with open("testfile.txt", "r") as infile:
data = infile.read()
with open("testfile.txt", "w") as outfile:
outfile.write("\n".join(data.split()))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.