我想從頭開始寫入檔案的開頭。在 python 3.9 io.IOBase.seek的檔案中,顯示 seek 有一個引數“whence”,但顯示錯誤:
TypeError:TextIOWrapper.seek() 沒有關鍵字引數
我的代碼是:
with open("t.txt",'a ') as f:
f.seek(0,)
print(f.readlines())
f.seek(0,whence=0)
f.write("12\n23\n32")
我使用了“a ”,因為我想在打開檔案時保留檔案的包含內容,并在以后進行編輯。
我想從一開始就編輯包含,這就是我使用whence = 0的原因,因為它可以幫助我從流的開頭進行編輯
uj5u.com熱心網友回復:
是的,這有點奇怪。
看看help(f.seek):
Help on built-in function seek:
seek(cookie, whence=0, /) method of _io.TextIOWrapper instance
注意/斜線。https://stackoverflow.com/a/24735582/8431111
它說“請不要使用關鍵字!”。
您可以指定f.seek(0)或f.seek(0, 0)。你只是不能命名第二個引數whence。它是簽名中的有用檔案,但您無法在通話中命名。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/463151.html
標籤:Python python-3.x 文件 文件-io
上一篇:如何知道檔案是否以換行符結尾
下一篇:從另一個Python腳本加載新值
