檔案操作:
使用檔案的目的:
就是把一些
資料儲存存放起來,
比如程式日誌檔案或者資料
想一想:
如果想用word編寫乙份簡歷,應該有哪些流程呢?
開啟word軟體,新建乙個word檔案
寫入個人簡歷資訊
儲存檔案
關閉word軟體
同樣,在操作檔案的整體過程與使用word編寫乙份簡歷的過程是很相似的
開啟檔案,或者新建立乙個檔案
讀/寫資料
關閉檔案
在python,使用open函式,可以開啟乙個已經存在的檔案,或者建立乙個新檔案
open(檔名,訪問模式)
示例如下:
f = open('test.txt')
f = open('test.txt')
f.close()
讀(read)
f = open('test.txt','r') # 以讀取模式開啟檔案
content = f.read() # 讀取檔案內容,並用變數content接收
print(content) # 輸出讀取的檔案內容
f.close() # 關閉檔案
寫(write)
使用write()可以完成向檔案寫入資料
f = open('test.txt','w') # 以寫入模式開啟檔案
f.write('這是寫入的一行文字') # 使用write方法寫入內容
f.close() # 關閉檔案
f = open('test.txt','a') # 以追加模式開啟
f.write('\n這是追加一行文字')
f.close() # 關閉檔案
訪問模式
說明r
以唯讀方式開啟檔案。檔案的指標將會放在檔案的開頭。這是預設模式。 w
開啟乙個檔案只用於寫入。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。 a
開啟乙個檔案用於追加。如果該檔案已存在,檔案指標將會放在檔案的結尾。也就是說,新的內容將會被寫入到已有內容之後。如果該檔案不存在,建立新檔案進行寫入。 r+
開啟乙個檔案用於讀寫。檔案指標將會放在檔案的開頭。 w+
開啟乙個檔案用於讀寫。如果該檔案已存在則將其覆蓋。如果該檔案不存在,建立新檔案。 a+
開啟乙個檔案用於讀寫。如果該檔案已存在,檔案指標將會放在檔案的結尾。檔案開啟時會是追加模式。如果該檔案不存在,建立新檔案用於讀寫。
r唯讀
,r+讀寫,
不建立
w新建只寫
,w+新建讀寫
,二者都會將檔案內容清零
(新檔案覆蓋舊檔案)
a
:附加寫
方式開啟,不可讀;a+
:附加讀寫
方式開啟
獲取指標位置
f = open('test.txt','a') # 以追加模式開啟
f.write('\n這是追加寫入的一行文字')
print(f.tell()) # 輸出指標位置
f.close() # 關閉檔案
重設指標文字
fileobject.seek(offset[,whence])
f = open('test.txt','a')
f.write('\n追加寫入一行文字')
print(f.tell())
f.seek(0,1) # 重設指標的位置 offset 偏移量 whence 從哪個位置開始偏移,預設從0開始
f.close()
重
命名檔案
os.rename(src,dst)
import os # 匯入os模組
os.rename('test.txt','testrename.txt') # 重新命名檔案,src 為舊檔案或目錄名, dst 為新檔案或目錄名
刪除檔案
os.remove(path)
import os # 匯入os 模組
os.remove('test.txt') # 準備刪除的檔名,如果是目錄會報錯
目錄操作
建立目錄
r=4,w=2,x=1
os.mkdir(path[,mode])
import os
os.mkdir('test',0o777) # 建立目錄 第乙個引數為目錄名,第二個引數為許可權
獲取當前所在目錄
os.getcwd()
import os
os.getcwd() # 獲取當前工作目錄
獲取目錄列表
os.listdir(path)
import os
file_list = os.listdir() # path 路徑 預設為當前路徑
切換所在目錄
os.chdir(path)
import os
os.chdir('c:\\test') # path 引數表示要切換的路徑
判斷檔案或資料夾是否存在
import os
bool = os.path.exists('test.txt') # 檢查檔案或者目錄是否存在,返回布林值
刪除資料夾
os.rmdir(path)
import os
os.rmdir('test') # path 引數為要刪除的路徑
建立多級目錄
import os
os.makedirs('test\test\test') # 遞迴建立目錄,如果目錄已經存在則報錯
os.makedirs('test\test\test',exist_ok=true) # exist_ok 引數置為true可以遮蔽報錯(不報錯)
刪除多級目錄
import os
os.removedirs('test\test\test') # 刪除多級目錄,注意刪除時目錄必須為空
判斷是否為檔案
import os
bool = os.path.isfile('cla.py') # 判斷路徑是否為檔案,是返回 true,不是則返回 false
判斷是否為目錄
import os
bool = os.path.isdir('test') # 判斷所傳路徑是否為目錄,是返回 true,不是則返回 false
返回絕對路徑
import os
abspath = os.path.abspath('test') # 返回傳入路徑的絕對路徑,如果傳入的是絕對路徑則直接返回,相對路徑則拼接到當前工作目錄後
判斷路徑
import os
bool = os.path.isabs(os.getcwd()) # 判斷所傳路徑是否為絕對路徑,如果是則返回true ,不是則返回false
print(bool)
獲取路徑中的檔名部分
import os
filename = os.path.basename(__file__) # 獲取路徑的檔名 __file__ 為內建方法獲取當前檔案路徑
獲取路徑中的路徑部分
import os
dirname = os.path.dirname('users/python/pycharmproject/project.py') # 獲取路徑中的目錄部分
獲取檔案資訊
import os
access_time = os.path.getatime('users/python/pycharmproject/project.py') # 檢視檔案訪問時間
create_time = os.path.ctime('users/python/pycharmproject/project.py') # 檢視檔案建立時間
modify_time = os.path.getmtime('users/python/pycharmproject/project.py') # 檢視檔案修改時間
python 檔案操作
簡明 python 教程 中的例子,python 執行出錯,用open代替file 可以執行。poem programming is fun when the work is done if you wanna make your work also fun use python f open e ...
python檔案操作
1,將乙個路徑名分解為目錄名和檔名兩部分 a,b os.path.split c 123 456 test.txt print a print b 顯示 c 123 456 test.txt 2,分解檔名的副檔名 a,b os.path.splitext c 123 456 test.txt pri...
Python 檔案操作
1.開啟檔案 如下 f open d test.txt w 說明 第乙個引數是檔名稱,包括路徑 第二個引數是開啟的模式mode r 唯讀 預設。如果檔案不存在,則丟擲錯誤 w 只寫 如果檔案 不存在,則自動建立檔案 a 附加到檔案末尾 r 讀寫 如果需要以二進位制方式開啟檔案,需要在mode後面加上...