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