點擊關註上方「Python數據分析實例」
設為「置頂或星標」,送達乾貨不錯過!
在PyQt5中對文件和文件夾進行操作時,主要使用QFile類、QFileInfo類和QDir類。
1、使用QFile類操作文件
QFile主要用來對文件打開、讀寫、複製、重命名、刪除等操作。
常用方法及說明
方法
說明
open()打開文件,文件的打開方式,通過QIODevice的枚舉值進行設置
1、QIODevice.NotOpen,不打開
2、QIODevice.ReadOnly,以只讀方式打開
3、QIODevice.WriteOnly,以只寫方式打開
4、QIODevice.ReadWrite,以讀寫方式打開
5、QIODevice.Append,以追加方式打開
isOpen()
判斷文件是否打開
close()
關閉文件
copy()
複製文件
exists()
判斷文件是否存在
read()
從文件中讀取指定個數的字符
readAll()
讀取所有數據
readLine()
讀取一行數據
remove()
刪除文件
rename()
重命名文件
seek()
查找文件
setFileName()
設置文件名
write()
向文件中寫入數據2、使用QFileInfo類操作文件夾
QFileInfo類主要獲取文件信息。
常用方法及說明
方法
說明size()
獲取文件大小
created()
獲取文件的創建時間
lastModified()
獲取文件的最後一次修改時間
lastRead()
獲取文件的最後一次訪問時間
isDir()
判斷是否為文件夾
isFile()
判斷是否為文件
isHidden()
判斷是否隱藏
isReadable()
判斷是否可讀
isWritable()
判斷是否可寫
isExecutable()
判斷是否可執行3、使用QDir類操作文件夾
QDir類提供對文件夾結構及其內容的訪問,對文件夾進行創建、重命名、刪除、遍歷等操作。
常用方法及說明
方法
說明
mkdir()
創建文件夾
exists()
判斷文件夾是否存在
rename()
重命名文件夾
rmdir()
刪除文件夾
entryList()
遍歷文件夾,獲取文件夾中所有子文件夾和文件的名稱列表
entryInfoList()遍歷文件夾,獲取文件夾中所有的子文件夾和文件的QFileInfo對象的列表
count()獲取文件夾和文件的數量
path()
獲取QDir對象所關聯的文件夾路徑
absolutePath()
獲取文件夾的絕對路徑
isAbsolute()
判斷是否為絕對路徑
setSorting()設置entryList()、entryInfoList()方法使用的排序順序,取值如下:
1、QDir.Name,按照名稱排序
2、QDir.Time,按修改時間排序
3、QDir.Size,按文件大小排序
4、QDir.Type,按文件類型排序
5、QDir.Unsorted,不排序
6、QDir.DirsFirst,先顯示文件夾,然後顯示文件
7、QDir.DirsLast,先顯示文件,然後顯示文件夾
8、QDir.Reversed,反向排序
9、QDir.IgnoreCase,不區分大小寫排序
10、QDir.DefaultSort,默認排序
isRelative()
判斷是否為相對路徑
isReadable()
判斷文件夾是否可讀,並且是否能通過名稱打開
isRoot()
判斷是否為根目錄
cd()
改變QDir類的路徑為dirName
setFilter()設置過濾器,以決定entryList()、entryInfoList()方法返回那些文件,取值如下:
1、QDir.Dirs,按照過濾方式列出所有的文件夾
2、QDir.AllDirs,不考慮過濾方式,列出所有的文件夾
3、QDir.Files,只列出所有文件
4、QDir.Drives,只列出磁碟(Unix系統無效)
5、QDir.NoSymLinks,不列出符號連接
6、QDir.NoDotAndDotDot,不列出"."和".."
7、QDir.AllEntries,列出文件夾、文件和磁碟
8、QDir.Readable,列出所有具有可讀屬性的文件夾和文件
9、QDir.Writable,列出所有具有可寫屬性的文件夾和文件
10、QDir.Executable,列出所有具有可執行屬性的文件夾和文件
11、QDir.Modified,列出被修改過的文件夾和文件
12、QDir.Hidden,列出隱藏的文件夾和文件
13、QDir.System,列出系統文件夾和文件
14、QDir.CaseSensitive,文件系統如果區分大小寫,則按大小寫方式進行過濾
當然,窗口程序對文件和文件夾操作使用內置的文件對象也可以。
後續詳細介紹文件夾和文件相關操作綜合案例。
Python數據分析實例