亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

被python文件模式“w+”所迷惑

被python文件模式“w+”所迷惑

白衣非少年 2019-06-26 15:46:38
被python文件模式“w+”所迷惑從博士,模式“r+”、“w+”和“a+”打開文件以進行更新(注意,“w+”截斷文件)。在二進制模式下,在區分二進制文件和文本文件的系統上,將‘b’附加到模式中以打開文件;在沒有這種區別的系統上,添加‘b’沒有任何影響。和這里W+:打開一個既可寫又可讀的文件。如果文件存在,則覆蓋現有文件。如果該文件不存在,則創建一個用于讀寫的新文件。但是,如何讀取打開的文件w+?
查看完整描述

3 回答

?
小怪獸愛吃肉

TA貢獻1852條經驗 獲得超1個贊

假設您正在用with像你應該說的那樣。然后你會做這樣的事情來閱讀你的文件:

with open('somefile.txt', 'w+') as f:
    # Note that f has now been truncated to 0 bytes, so you'll only
    # be able to read data that you write after this point
    f.write('somedata\n')
    f.seek(0)  # Important: return to the top of the file before reading, otherwise you'll just read an empty string
    data = f.read() # Returns 'somedata\n'

注意f.seek(0)-如果你忘了這件事,f.read()調用將嘗試從文件末尾讀取,并返回一個空字符串。


查看完整回答
反對 回復 2019-06-26
?
阿晨1998

TA貢獻2037條經驗 獲得超6個贊

Python中的所有文件模式

  • r

    讀書用
  • r+

    打開以進行讀寫(無法截斷文件)
  • w

    寫作用
  • w+

    用于寫入和讀取(可以截斷文件)
  • rb

    用于讀取二進制文件。文件指針放在文件的開頭。
  • rb+

    讀取或寫入二進制文件
  • wb+

    寫入二進制文件
  • a+

    打開供追加
  • ab+

    打開一個文件,用于二進制文件的附加和讀取。如果文件存在,則文件指針位于文件的末尾。文件以附加模式打開。
  • x

    打開以進行獨占創建,如果文件已經存在,則失敗(Python 3)


查看完整回答
反對 回復 2019-06-26
  • 3 回答
  • 0 關注
  • 1525 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號