簡體   English   中英

Python輸入/輸出說明

[英]Python input/Output explanation

      my_file = open("text.txt", "r")
      print my_file.readline()
      print my_file.readline()
      print my_file.readline()
      my_file.close()

我知道這/如何打印出文本文件的前三行,但我不確定為什么 由於我要打印出my_file.readline(),為什么它不打印出所有三行的第一行?

Python讀取文件並將其存儲在變量my_file ,並且指針位於文件開頭或(0, 0) 當您開始執行readline ,python將從文件中讀取一行,然后“使用”它。 換句話說,當前指針現在將在下一行等待,因此當您調用readline ,它將現在獲得下一行。

希望能有所幫助

與您期望的等效:

my_file = open("text.txt", "r")
print my_file.readline()
my_file.seek(0, 0)
print my_file.readline()
my_file.seek(0, 0)
print my_file.readline()
my_file.close()

在上述情況下,在每次readline之后, seek(0, 0)調用會將指針的位置重置為文件的開頭,因此在這種情況下,您將結束打印第一行3次。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM