Tôi có một tệp văn bản trông như thế này:
15.9 17.2 18.6 10.5
Tôi muốn chỉnh sửa tệp này bằng Python để có vẻ như thế này:
15.9
17.2
18.6
10.5
Điều này có nghĩa là tôi cần thay thế các chuỗi không gian bằng các chuỗi mới và lưu văn bản.
Tôi đã thử điều này nhưng nó không hoạt động:
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
Bản in cho
15.9
17.2
18.6
10.5
7 đã hoạt động, nhưng tôi không nhận được một tệp văn bản mới với các không gian được thay thế bằng các dòng mới.Làm thế nào tôi có thể khắc phục sự cố và tạo ra đầu ra mong muốn?
Ggorlen
37.5K7 Huy hiệu vàng61 Huy hiệu bạc81 Huy hiệu đồng7 gold badges61 silver badges81 bronze badges
Hỏi ngày 7 tháng 8 năm 2019 lúc 5:58Aug 7, 2019 at 5:58
3
with open["testfile.txt", "r"] as r:
with open["testfile_new.txt", "w"] as w:
w.write[r.read[.replace[' ' , '\n']]
sahasrara62
8,5933 Huy hiệu vàng27 Huy hiệu bạc41 Huy hiệu đồng3 gold badges27 silver badges41 bronze badges
Đã trả lời ngày 7 tháng 8 năm 2019 lúc 6:02Aug 7, 2019 at 6:02
2
Example:
with open["file1.txt", "r"] as read_file:
with open["file2.txt", "w"] as write_file:
write_file.write[read_file.read[].replace[" ", '\n']]
Nội dung của File1.txt:
15.9 17.2 18.6 10.5
Nội dung của file2.txt:
15.9
17.2
18.6
10.5
NOTE:
Hoặc bạn có thể sử dụng phương thức
15.9
17.2
18.6
10.5
8 và 15.9
17.2
18.6
10.5
9 thay vì thay thế.write_file.write["\n".join[read_file.read[].split[]]]
Đã trả lời ngày 7 tháng 8 năm 2019 lúc 6:26Aug 7, 2019 at 6:26
Milanbalazsmilanbalazsmilanbalazs
4.6104 Huy hiệu vàng20 Huy hiệu bạc43 Huy hiệu đồng4 gold badges20 silver badges43 bronze badges
Thay vào đó hãy cố gắng như thế này
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[]
Đã trả lời ngày 7 tháng 8 năm 2019 lúc 6:06Aug 7, 2019 at 6:06
3NiGMa3NiGMa3NiGMa
5451 Huy hiệu vàng8 Huy hiệu bạc24 Huy hiệu đồng1 gold badge8 silver badges24 bronze badges
Bạn có thể thử sử dụng Chuỗi thay thế:
string = string.replace['\n', ''].replace['\r', '']
Thứ nhất: f.close [] không có ở đó. f.close[] is not there.
Thứ hai: Hãy thử mã trên. Nó sẽ thay thế không gian thành các dòng mới. try above code. It will replace spaces to new lines.
Đã trả lời ngày 7 tháng 8 năm 2019 lúc 6:24Aug 7, 2019 at 6:24
1
Sử dụng
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
0 với 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
1Ex:
15.9
17.2
18.6
10.5
0Đã trả lời ngày 7 tháng 8 năm 2019 lúc 7:09Aug 7, 2019 at 7:09
RakeshrakeshRakesh
79,8K17 Huy hiệu vàng72 Huy hiệu bạc109 Huy hiệu đồng17 gold badges72 silver badges109 bronze badges
Đã tạo: tháng 3-22, 2022 Trong hướng dẫn này, chúng tôi sẽ học cách sử dụng một kỹ thuật để thay thế các dòng mới bằng không gian trong Python. Hãy để chúng tôi lấy một chuỗi mẫu với một ký tự dòng mới để làm việc. Bây giờ chúng ta có một chuỗi với một ký tự dòng mới. Hãy để chúng tôi in chuỗi mẫu của chúng tôi. Mã trên hiển thị đầu ra dưới đây thể hiện dòng mới. Bây giờ chúng tôi sẽ sử dụng chức năng Sử dụng chức năng
2 để thay thế dòng mới bằng không gian trong Pythonf = 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
115.9
17.2
18.6
10.5
215.9
17.2
18.6
10.5
315.9
17.2
18.6
10.5
2 để thay thế ký tự dòng mới của chúng tôi bằng không gian. Chúng tôi truyền chuỗi của chúng tôi dưới dạng tham số cho hàm và lưu trữ chuỗi kết quả mới trong một biến mới.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
15.9
17.2
18.6
10.5
4Mã trên sẽ thay thế tất cả các ký tự dòng mới trong chuỗi của chúng tôi bằng khoảng trắng. Chúng tôi nhận được một chuỗi không có ký tự dòng trong đó.
Bây giờ chúng tôi sẽ in chuỗi mới để xem đầu ra.
15.9
17.2
18.6
10.5
5Chúng tôi nhận được đầu ra dưới đây khi in chuỗi mới.
15.9
17.2
18.6
10.5
6Chúng ta có thể thấy rằng một không gian đã được thêm vào thay cho một nhân vật mới.
Do đó, chúng ta có thể thay thế thuận tiện các ký tự mới bằng không gian trong Python bằng phương thức trên.