Hướng dẫn how do you write on different lines in python? - làm thế nào để bạn viết trên các dòng khác nhau trong python?

Tôi có mã sau:

line1 = raw_input("line 1: ")
line2 = raw_input("line 2: ")
line3 = raw_input("line 3: ")
print "I'm going to write these to the file."
target.write(line1)
target.write("\n")
target.write(line2)
target.write("\n")
target.write(line3)
target.write("\n")

Ở đây mục tiêu là đối tượng tệp và line1, line2, line3 là các đầu vào của người dùng. Tôi chỉ muốn sử dụng một lệnh Target.write () để viết tập lệnh này. Tôi đã thử sử dụng những điều sau:

target.write("%s \n %s \n %s \n") % (line1, line2, line3)

Nhưng điều đó không đặt một chuỗi bên trong một chuỗi khác nhưng nếu tôi sử dụng như sau:

target.write(%s "\n" %s "\n" %s "\n") % (line1, line2, line3)

Trình thông dịch Python (tôi đang sử dụng Microsoft PowerShell) cho biết cú pháp không hợp lệ. Làm thế nào tôi có thể làm điều đó?

hỏi ngày 9 tháng 1 năm 2014 lúc 12:13Jan 9, 2014 at 12:13

Hướng dẫn how do you write on different lines in python? - làm thế nào để bạn viết trên các dòng khác nhau trong python?

kartikeykant18kartikeykant18kartikeykant18

1.6855 huy hiệu vàng26 Huy hiệu bạc39 Huy hiệu đồng5 gold badges26 silver badges39 bronze badges

Bạn đang nhầm lẫn niềng răng. Làm như thế này:

target.write("%s \n %s \n %s \n" % (line1, line2, line3))

Hoặc thậm chí tốt hơn, sử dụng

target.write("%s \n %s \n %s \n") % (line1, line2, line3)
2:

target.writelines([line1, line2, line3])

Đã trả lời ngày 9 tháng 1 năm 2014 lúc 12:16Jan 9, 2014 at 12:16

9

Một cách khác mà, ít nhất là với tôi, có vẻ trực quan hơn:

target.write('''line 1
line 2
line 3''')

Đã trả lời ngày 8 tháng 4 năm 2020 lúc 0:25Apr 8, 2020 at 0:25

Hướng dẫn how do you write on different lines in python? - làm thế nào để bạn viết trên các dòng khác nhau trong python?

JCKLOPPJCKLOPPjcklopp

4415 Huy hiệu bạc9 Huy hiệu đồng5 silver badges9 bronze badges

with open('target.txt','w') as out:
    line1 = raw_input("line 1: ")
    line2 = raw_input("line 2: ")
    line3 = raw_input("line 3: ")
    print("I'm going to write these to the file.")
    out.write('{}\n{}\n{}\n'.format(line1,line2,line3))

Đã trả lời ngày 9 tháng 1 năm 2014 lúc 12:20Jan 9, 2014 at 12:20

Burhan Khalidburhan KhalidBurhan Khalid

165K18 Huy hiệu vàng238 Huy hiệu bạc276 Huy hiệu Đồng18 gold badges238 silver badges276 bronze badges

Tôi nhận thấy rằng đây là một cuộc tập trận nghiên cứu từ cuốn sách "Tìm hiểu Python một cách khó khăn". Mặc dù bạn đã hỏi câu hỏi này 3 năm trước, tôi đã đăng bài này để người dùng mới nói rằng đừng hỏi trực tiếp trong stackoverflow. Ít nhất hãy đọc tài liệu trước khi hỏi.

Và theo như câu hỏi có liên quan, sử dụng

target.write("%s \n %s \n %s \n") % (line1, line2, line3)
2 là cách dễ nhất.

Sử dụng nó như thế này:

target.writelines([line1, line2, line3])

Và như Alkid đã nói, bạn đã làm hỏng giá đỡ, chỉ cần làm theo những gì anh ấy nói.

Đã trả lời ngày 20 tháng 11 năm 2017 lúc 16:47Nov 20, 2017 at 16:47

1

Nó cũng có thể được thực hiện như thế này:

target.write(line1 + "\n" + line2 + "\n" + line3 + "\n")

Hướng dẫn how do you write on different lines in python? - làm thế nào để bạn viết trên các dòng khác nhau trong python?

Moshe Slavin

5,0075 Huy hiệu vàng23 Huy hiệu bạc36 Huy hiệu Đồng5 gold badges23 silver badges36 bronze badges

Đã trả lời ngày 23 tháng 12 năm 2018 lúc 8:27Dec 23, 2018 at 8:27

Giả sử bạn không muốn có một khoảng trống ở mỗi dòng mới sử dụng:

print("I'm going to write these to the file")
target.write("%s\n%s\n%s\n" % (line1, line2, line3))

Điều này hoạt động cho phiên bản 3.6

Đã trả lời ngày 29 tháng 3 năm 2017 lúc 5:58Mar 29, 2017 at 5:58

Điều này cũng hoạt động:

target.write("%s \n %s \n %s \n") % (line1, line2, line3)
0

Hướng dẫn how do you write on different lines in python? - làm thế nào để bạn viết trên các dòng khác nhau trong python?

Machavity ♦

30.2k26 Huy hiệu vàng87 Huy hiệu bạc98 Huy hiệu đồng26 gold badges87 silver badges98 bronze badges

Đã trả lời ngày 21 tháng 4 năm 2019 lúc 17:10Apr 21, 2019 at 17:10

Jaydeemourgjaydeemourgjaydeemourg

1331 Huy hiệu vàng1 Huy hiệu bạc8 Huy hiệu đồng1 gold badge1 silver badge8 bronze badges

target.write("%s \n %s \n %s \n") % (line1, line2, line3)
1

Làm thế nào để bạn viết trên các dòng riêng biệt trong Python?

Nhân vật dòng mới trong Python là \ n.Nó được sử dụng để chỉ ra sự kết thúc của một dòng văn bản.Bạn có thể in các chuỗi mà không cần thêm một dòng mới có kết thúc =, đó là ký tự sẽ được sử dụng để tách các dòng.end = , which is the character that will be used to separate the lines.

Làm thế nào để bạn viết nhiều dòng văn bản trong Python?

Sử dụng hàm writeLines () Hàm này ghi đồng thời một số dòng chuỗi vào tệp văn bản.Một đối tượng có thể lặp lại, chẳng hạn như một danh sách, bộ, tuple, v.v., có thể được gửi đến phương thức writeLines (). This function writes several string lines to a text file simultaneously. An iterable object, such as a list, set, tuple, etc., can be sent to the writelines() method.

Làm thế nào để bạn viết nhiều dòng trên một dòng trong Python?

Những tuyên bố này rất có thể được viết trong một dòng bằng cách đặt dấu chấm phẩy ở giữa.putting semicolon in between.