python学习--文件操作
生活随笔
收集整理的這篇文章主要介紹了
python学习--文件操作
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
計算機中的文件是以二進制保存在磁盤上的
- 文本文件和二進制文件
- 文本文件
可以使用 文本編輯軟件 查看
本質上還是二進制文件 - 二進制文件
二進制文件是給機器閱讀的
- 文本文件
- 操作文件的基本函數
注意:如果忘記關閉文件,會造成系統資源消耗,而且會影響到后續對文件的訪問。
我們先要知道操作一個文件的大致步驟,就是先打開文件,然后對文件進行操作,最后關閉。這也可以說就是一個套路性的東西。還要說的就是上面的后三個函數需要通過文件對象調用。
語法說了也是比較迷,下面直接看一個例子。
# 1. 打開 - 文件名需要注意大小寫 file = open("README")#2. 讀取 text = file.read() print(text)#3. 關閉 file.close()上邊的這個例子就是一個簡單的文件操作,而其中的file就是一個文件對象。
- 文件指針
- 在文件的讀取過程中會有一個標記此時讀到的位置的東西–>文件指針
- 文件指針 標記 從哪個位置開始讀取數據
- 第一次打開 文件時,通常 文件指針會指向文件的開始位置
- 當執行了 read 方法后,文件指針 會移動到 讀取內容的末尾
這里需要說一下的是,當執行完read函數的時候,這個時候文件指針是在末尾的,換句話說就是如果此時再次執行read這個函數是讀不到任何東西的。
- 打開文件的方式
上面的操作不加任何參數的話,默認是只讀的。如果想指定其他的操作,需要增加參數。
注意:頻繁的移動文件指針,會影響文件的讀寫效率,開發中更多的時候會以 只讀、只寫 的方式來操作文件。
看下面的一個簡單例子
- 按行讀取
這里需要說一個方法,就是readline方法,它也是用文件對象進行操作的,這個方法一次只讀一行數據。 - 為啥要使用readline方法
我們知道磁盤(也就是硬盤)cpu的交換數據是需要通過內存條的,也就是說,每一次讀文件時會把數據加載到內存中,這個時候一個小文件還好,如果是一個很大的文件就會占用內存,如果一行讀一次的話,這個問題就可以解決了。
看下面的這個例子
#打開文件 file = open("README")while True:# 讀取一行內容text = file.readline()# 判斷是否讀到內容if not text: # 這個條件是判斷是否文件讀完,如果讀完就跳出循環break# 每讀取一行的末尾已經有了一個 `\n`print(text, end="")#關閉文件 file.close()- 下面看一下文件復制的小例子
上面的代碼將sgyz.txt文件復制了一份,當然如果要是大文件的話,要用readline函數。
- os模塊
- 這個os包是對文件進行的創建、重命名、刪除、改變路徑、查看目錄內容、……等操作,換句話說其實就是用終端命令
- 使用之前需要先導入這個包
下面是文件操作
下面是目錄操作
注意: 這里的文件目錄到支持絕對路徑和相對路徑
總結
以上是生活随笔為你收集整理的python学习--文件操作的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: ubuntu14.04+cuda6.5+
- 下一篇: 上班族的最佳饮食搭配法