存儲文件的重要
一個程序在運行過程中用了九牛二虎之力終于計算出了結果,試想一下如果不把這些數據存放起來,相比重啟電腦之后,。 默認數據是加載到內存中,結果也是保存到內存中, 程序執行結束,所有的數據釋放。
要讀取二進制文件,比如圖片、視頻等等,用'rb', ‘wb', 'ab'等模式打開文件即可!
mode:
r:只能讀文件
w:只能寫入(清空文件內容)
a+:讀寫(追加)
打開文件:
f = open(‘doc/hello.txt',mode=‘a')
文件的讀寫操作
f.write('\nhello python')
文件的關閉
f.close()
f = open('C:/Users/Shinelon/PycharmProjects/pythonProject1/python/westos',mode='a+')
f.write('\nxinxiedeo')
結果如下:
本來文件westos里面內容如下:

執行命令之后:就添加進去了


指針的概念
對于指針:seek(offset, from)有2個參數: offset:偏移量 from:方向!!
0:表示文件開頭;
1:表示當前位置;
2:表示文件末尾
文件的關閉
方法一: 調用close()方法關閉文件。文件使用完畢后必須關閉,因為文件對象會占用操作系統的資源,
并且操作系統同一時間能打開的文件數量也是有限的:
方法二: Python引入了with語句來自動幫我們調用close()方法
with open('/root/PycharmProjects/pythonProject1/4/test.txt','w+') as f:
f.write('hello world\n')
f.seek(0,0) #移動指針位置到文件最開始
print("當前指針位置為:",f.tell())
print(f.read()) #讀取文件內容
執行和結果如下:

若是修改指針位置:
with open('/root/PycharmProjects/pythonProject1/4/test.txt','w+') as f:
f.write('hello world\n')
f.seek(0,2) #移動指針位置到文件末尾
print("當前指針位置為:",f.tell())
print(f.read()) #讀取文件內容
那么輸出如下:

OS模塊
功能:
os,語義為操作系統,處理操作系統相關的功能,可跨平臺。 比如顯示當前目錄下所有文件/刪除某個文件/獲取文件大小……
獲取操作系統的類型
import os #Linux操作系統
import platform #windows操作系統
print(os.name)
# 2.獲取主機信息,windows系統使用platform模塊,如果是linux系統直接使用os模塊
結果如下:

我們需要完善代碼:
不確定是windows系統,還是linux操作系統!!
用到
try:可能報錯的執行內容!
excpt:可能異常的執行內容!
finally:都會執行的內容!
import os
import platform
try:
uname = os.uname()
except :
uname = platform.uname()
finally:
print(uname)
結果如下:

獲得系統的環境變量!
import os
envs = os.environ
print(envs)
結果如下:

文件的路徑問題也很重要:
先判斷是不是就對的路徑
import os
print(os.path.isabs('/root/PycharmProjects/pythonProject1/4/test.txt'))
print(os.path.isabs('test.txt'))
結果如下:

生成絕對路徑:
import os
print(os.path.abspath('/root/PycharmProjects/pythonProject1/4/test.txt'))
print(os.path.abspath('test.txt'))
結果如下:

目錄名和文件名的拼接
#os.path.dirname獲取某個文件對應的目錄名
#__file__是指當前文件
#join 拼接,將目錄和文件名拼接起來
import os
BASE_DIR = os.path.dirname(__file__)
setting_file = os.path.join(BASE_DIR,'dev.conf')
print(setting_file)
結果如下:

獲取目錄名或者文件名
import os
filename = 'D:/root/westos/test.txt'
print(os.path.basename(filename)) #輸出文件名
print(os.path.dirname(filename)) #輸出文件所在目錄
結果如下:

介紹文件的創建和刪除
os模塊中的rename()可以完成對文件的重命名操作。
rename(需要修改的文件名, 新的文件名)
os模塊中的remove()可以完成對文件的刪除操作
remove(待刪除的文件名)
以上就是python持久化存儲文件操作的詳細內容,更多關于python存儲文件的資料請關注腳本之家其它相關文章!
您可能感興趣的文章:- Python如何存儲數據到json文件
- Python把對應格式的csv文件轉換成字典類型存儲腳本的方法
- python用pandas數據加載、存儲與文件格式的實例
- 詳解如何在python中讀寫和存儲matlab的數據文件(*.mat)
- Python的Django中將文件上傳至七牛云存儲的代碼分享
- python目錄操作之python遍歷文件夾后將結果存儲為xml
- python將xml xsl文件生成html文件存儲示例講解