利用Python獲取文件夾下所有文件實例代碼
前言
使用Python獲取文件夾下的所有文件時,存在多種方式。
1. os.listdir
os.listdir:參數(shù)為文件夾路徑,可以返回文件夾下的所有子文件夾、文件名稱。
示例:
import os path = 'D:\Workspace' for file_name in os.listdir(path): print(file_name)
注意,不能返回子文件夾下的文件,并且僅返回名稱。
2. os.walk
os.walk:參數(shù)為文件夾路徑,返回3個內(nèi)容:絕對路徑、子文件夾、文件名。 此方法可以遍歷文件夾下的所有文件、子文件及內(nèi)的所有文件:
例如:
D:/workspace/folder/text1.txt
D:/workspace/folder/text2.txt
此方法在輸入的path為D:/workspace時,第一次遍歷會獲取/workspace下的所有文件和文件夾;第二次遍歷會獲取/workspace/folder下的所有文件和文件夾。因此需要對結果進行循環(huán),以獲取所有文件。
示例:
import os path = 'D:\Workspace' for root, dirs, files in os.walk(path): print(root) print(dirs) print(files)
返回:
D:\Workspace
['folder']
[]
D:\Workspace\folder
[]
['text1.txt', 'text2.txt']
3. glob.glob
glob:參數(shù)為路徑以及文件過濾條件,若不設置過濾需填寫為*,此函數(shù)會返回包括路徑的文件夾和文件名
示例:
import glob path = 'D:\Workspace\folder\*' for file_abs in glob.glob(path): print(file_abs)
返回:
D:\Workspace\folder\text1.txt
D:\Workspace\folder\text2.txt
注意,不能返回子文件夾下的文件,并且返回文件名與絕對路徑。
附:Python獲取指定目錄下的文件夾名列表和文件名列表
import os # enter of program if __name__ == '__main__': # input input_path = 'D:/data/pycodes/books/' # initialize dir_list = [] file_list = [] # process for root, dirs, files in os.walk(input_path): dir_list = dirs file_list = files break # output print(dir_list, len(dir_list)) print(file_list, len(file_list))
總結
到此這篇關于利用Python獲取文件夾下所有文件的文章就介紹到這了,更多相關Python獲取文件夾所有文件內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用Django框架中ORM系統(tǒng)實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)增刪改查
這篇文章主要介紹了使用Django的ORM實現(xiàn)對數(shù)據(jù)庫數(shù)據(jù)增刪改查方法,文中附含詳細示例代碼以及過程詳解,有需要的朋友可以借鑒參考下2021-09-09R vs. Python 數(shù)據(jù)分析中誰與爭鋒?
R和Python兩者誰更適合數(shù)據(jù)分析領域?在某些特定情況下誰會更有優(yōu)勢?還是一個天生在各方面都比另一個更好?2017-10-10Python的Flask框架中實現(xiàn)簡單的登錄功能的教程
這篇文章主要介紹了Python的Flask框架中實現(xiàn)簡單的登錄功能的教程,登錄是各個web框架中的基礎功能,需要的朋友可以參考下2015-04-04Python畫圖常用代碼總結大全(20個畫圖代碼現(xiàn)拿現(xiàn)用)
Python是一種高級編程語言,擁有豐富的圖形庫,可以完成繪制各種類型的圖形任務,下面這篇文章主要給大家介紹了關于Python畫圖常用代碼的相關資料,文中介紹的這20個畫圖代碼可以現(xiàn)拿現(xiàn)用,需要的朋友可以參考下2023-06-06