程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python、PyCharm調試的時候寫入不了文件分析及解決辦法,python處理txt文件的常用操作讀、寫和追加操作r、r+、w、w+、a、a+

編輯:Python

一、問題詳情

我這裡是使用如下類型代碼打開和寫入文件的:

f.open()
f.write()

在dubug運行的時候,我這裡想查看寫入文件的情況,但是會發現.txt文件為空【dubug的時候可以open但是不一定能write

隨後我們取消斷點繼續執行,直到結束

會發現生成的三個txt文件,除了我們剛才調試一次的train.txt之外,其他兩個都寫入了文件,但是train.txt為空

二、原因可能如下:

當我們寫文件時,操作系統往往不會立刻把數據寫入磁盤,而是放到內存緩存起來,空閒的時候再慢慢寫入。只有調用close()方法時,操作系統才保證把沒有寫入的數據全部寫入磁盤。

所以我們如果不打斷點調試,直接運行的時候是正常輸出的。但是如果想打斷點調試也有輸出的話需要加f.close()函數。類似如下:

三、python處理txt文件的常用操作

  • r 打開只讀文件,該文件必須存在。
  • r+ 打開可讀寫的文件,該文件必須存在。
  • w 打開只寫文件,若文件存在則文件長度清為0,即該文件內容會消失。若文件不存在則建立該文件。
  • w+ 打開可讀寫文件,若文件存在則文件長度清為零,即該文件內容會消失。若文件不存在則建立該文件。
  • a 以附加的方式打開只寫文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾,即文件原先的內容會被保留。
  • a+ 以附加方式打開可讀寫的文件。若文件不存在,則會建立該文件,如果文件存在,寫入的數據會被加到文件尾後,即文件原先的內容會被保留。

注意這裡 w 如果文件不存在,將會新建該文件;存在就會清空。


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved