Hướng dẫn how do i print a specific line in python? - làm cách nào để in một dòng cụ thể trong python?

Tôi có một tệp .txt và tôi muốn in các dòng 3, 7, 11, 15,...

Vì vậy, sau khi in dòng thứ ba, tôi muốn in mỗi dòng thứ 4 sau đó.

Tôi bắt đầu bằng cách nhìn vào nhà điều hành mô đun:

#Open the file
with open('file.txt') as file:

  #Iterate through lines
  for i, line in enumerate(file):

      #Choose every third line in a file
      if i % 3 == 0:
          print(line)

  #Close the file when you're done
  file.close()

Nhưng cách tiếp cận đó in mỗi dòng thứ ba. Nếu i % 3 == 1 in các dòng 1, 4, 7, 10, 13, v.v.

Hướng dẫn how do i print a specific line in python? - làm cách nào để in một dòng cụ thể trong python?

Rahul k p

15.1k4 Huy hiệu vàng34 Huy hiệu bạc51 Huy hiệu Đồng4 gold badges34 silver badges51 bronze badges

Hỏi ngày 13 tháng 9 năm 2018 lúc 6:38Sep 13, 2018 at 6:38

4

Thay vì sử dụng modulo, chỉ cần sử dụng bổ sung, hãy bắt đầu với dòng đầu tiên bạn muốn hiển thị, sau đó thêm 4 vào nó

next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:43Sep 13, 2018 at 6:43

Hướng dẫn how do i print a specific line in python? - làm cách nào để in một dòng cụ thể trong python?

NóiesayseSayse

42K14 Huy hiệu vàng75 Huy hiệu bạc140 Huy hiệu đồng14 gold badges75 silver badges140 bronze badges

Mã của bạn gần như ổn, ngoại trừ modulo: bạn muốn phần còn lại của bộ phận là 4 là 3.

with open('file.txt') as file:
  for i, line in enumerate(file):
      if i % 4 == 3:
          print(line)

Lưu ý rằng bạn không cần phải rõ ràng

next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
0 Tệp của bạn ở cuối: đó là những gì
next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
1 dành cho, nó đảm bảo rằng tệp của bạn sẽ bị đóng bất cứ điều gì xảy ra.

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:56Sep 13, 2018 at 6:56

Hướng dẫn how do i print a specific line in python? - làm cách nào để in một dòng cụ thể trong python?

Thierry Lathuillethierry LathuilleThierry Lathuille

23.1K10 Huy hiệu vàng40 Huy hiệu bạc46 Huy hiệu đồng10 gold badges40 silver badges46 bronze badges

Vì vậy, bạn muốn một cái gì đó xảy ra mỗi lần thứ tư, điều đó có nghĩa là modulo 4. Hãy thử thay đổi IF của bạn thành

next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
2 với số lượng tốt cho
next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
3.

Nhân tiện, khi sử dụng câu lệnh

next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
1 mà bạn không phải gọi
next_line = 2  # Line 3 is index 2
for i, line in enumerate(file):

    if i == next_line:
        print(line)
        next_line = next_line + 4
5, nó sẽ tự động thực hiện.

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:42Sep 13, 2018 at 6:42

MOBERGMOBERGMoberg

5.0853 Huy hiệu vàng33 Huy hiệu bạc 50 Huy hiệu Đồng3 gold badges33 silver badges50 bronze badges

Bạn nghĩ thế nào về:

# Fetch all lines from the file
lines = open('20 - Modular OS - lang_en_vs2.srt').readlines()

# Print the 3rd line
print(lines[2])

# throw away the first 3 lines, so the modulo (below) works ok
for i in range(3):
    del(lines[0])

# print every 4th line after that
for (i in range(len(lines)):
    if (i > 0 and i % 4 == 0):
        print(lines[i])

Đọc mọi dòng thành một mảng. Đầu ra dòng thứ 3. Sau đó, chúng tôi cần mỗi dòng thứ tư, vì vậy bằng cách xóa 3 yếu tố đầu tiên, thật dễ dàng để kiểm tra đối với Modulo 4 ("% 4") và xuất dòng.

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:45Sep 13, 2018 at 6:45

KingsleykingsKingsley

13.9k5 Huy hiệu vàng31 Huy hiệu bạc51 Huy hiệu Đồng5 gold badges31 silver badges51 bronze badges

3

x = 0
with open('file.txt') as file:

  #Iterate through lines
  for i, line in enumerate(file):
      x += 1
      #Choose every third line in a file
      if x == 4:
          print(line)
          x = 0

  #Close the file when you're done
  file.close()

Kết quả

>>> i = 0
>>> for x in range(0, 100):
...     i += 1
...     if i is 4:
...         print(x)
...         i = 0

3 7 11 15 19 23 27 31 35 39 43 47 51 55 59 63 67 71 75 79 83 87 91 95 99

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:50Sep 13, 2018 at 6:50

file = open('file.txt')
print(file[2])
#Iterate through lines
for i in file:
  #Choose every third line in a file, beginning with 4
  if i % 4 == 0:
      print(i+3)
  elif i % 4 == 0:
      print(i)

Điều này hoạt động, nhưng không siêu thanh lịch.

Đã trả lời ngày 13 tháng 9 năm 2018 lúc 6:56Sep 13, 2018 at 6:56

Hướng dẫn how do i print a specific line in python? - làm cách nào để in một dòng cụ thể trong python?

Thierry Lathuillethierry LathuilleGuar

23.1K10 Huy hiệu vàng40 Huy hiệu bạc46 Huy hiệu đồng6 bronze badges

Làm cách nào để in một dòng văn bản cụ thể trong Python?

Để đọc các dòng cụ thể từ tệp văn bản, vui lòng làm theo các bước sau:..
Mở tệp ở chế độ đọc. Để mở một tệp PASS PASS PIDE và MODE MODE R đến hàm Open (). ....
Tạo một danh sách để lưu trữ số dòng. ....
Tạo một danh sách để lưu trữ các dòng. ....
Sử dụng cho vòng lặp với hàm Enumerate () để có được một dòng và số của nó. ....
Đọc tệp theo số dòng ..

Làm thế nào để bạn chọn một dòng cụ thể trong Python?

Python: Chọn một dòng cụ thể từ văn bản..
Mở tệp văn bản ..
Đi đến các dòng bắt đầu với "bắt đầu".
Chuyển đến dòng 3 từ các dòng bắt đầu bằng "Bắt đầu" (đã chọn trước đó).
Kiểm tra xem dòng đó có chứa từ "chứa" không ..

Làm cách nào để trích xuất một dòng cụ thể từ một tệp trong Python?

Phương thức 1: FileObject.ReadLines () Một đối tượng tệp có thể được tạo trong python và sau đó readlines () phương thức có thể được gọi trên đối tượng này để đọc các dòng vào một luồng.Phương pháp này được ưa thích khi một dòng hoặc một phạm vi dòng từ tệp cần được truy cập đồng thời.

Làm thế nào để bạn in một dòng theo dòng 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.