練習- 檔案操作
處理文件關鍵字函數為 open(), 操作完畢後要鍵入close() 關閉檔案物件釋放資源
通常可以搭配 with open() 程式碼執行完畢時會自動關閉檔案IO
有四種打開文件的模式
r : 讀取-默認值 ,當文件不存在則會出錯
a :追加 在文件尾端 進行追加 類似append ,如果文件不存在時會創建文件
w : 寫入 打開文件進行寫入, 如果文件不存在則會創建文件,如果文件存在則會重新復寫
x : Creat 創建指定的文件,如果文件存在則返回錯誤
此外 可只指定是以 二進制 或 是 文本模式處理
't' :文本 -默認值, 文本模式
'b' :二進制 二進制模式,例如圖像
語法:
with open('檔案名稱' , '檔按模式') as 檔案物件:
with open('demon.txt' , 'r') as file:
file.read()
#方法介紹
read()方法 返回整個文本,但也可以指定返回的字符數:
file.read(5) #指返回文件的前5個字符
readline()方法 返回一行文本
file.readline() #調用兩次就是返回前兩行,所以使用for也可以逐行讀完
readlines()方法 文本每一行都存入list中
write()方法 寫入string
writelines()方法 用於將一個包含多行字符串的list寫入文件
writale() 方法用於檢查文件是否可以寫入,當文件已可寫入模式打開時會返回True
with open('demofile.txt' , 'w')as file:
if file.writable(): #檢查文件是否可以寫入
file.write(string)
file.writelines(list1)
--------------'demofile.txt'-----------------
apple
apple
banana
orange
os.remove() 刪除文件
os.rmdir() 刪除資料夾
os.path.exists()檢查檔案是否存在
os.path.exists('demofile.txt') #檢查demofile.txt是否存在,上面刪除後所以會回傳布林值False
os.makedirs() 建立資料夾
os.listdir() 列出目前路徑內容(包含檔案和子目錄)
os.path.isfile() 確認是否是一個有效檔案
os.path.isfile('oops.txt')
os.path.isdir() 確認是否是一個目錄
os.path.isdir(".") 確認目前目錄 , os.path.isdir("..") 確認父目錄
os.path.isabs() 確認是否是絕對路徑
os.rename()改名
shutil.copy(檔案路徑,目的路徑) 複製檔案,來自shutil模組
shutil.move(檔案路徑,目的路徑) 剪下檔案
glob() 方法來列出相符的檔案
- *會比對任何東西
- ?會比對單一字元
- [abc]比對a或b或c
- [!abc]比對除了a b 或c之外字元
取得m開頭檔案或目錄
glob.glob("m*") 返回ex:['mcintyre']
有兩個字母的檔案或目錄?
glob.glbo("??") 返回 如果沒有就是[]
想要找8個字母m開頭e結尾的單字
glob.glob("m??????e") 返回['mcintyre']
有沒有以 k 、 l 或m開頭以e結尾的東西
os.path.join() 方法建立路徑名稱
標籤: 練習

0 個意見:
張貼留言
訂閱 張貼留言 [Atom]
<< 首頁