在Python編程中,獲取文件列表是一個常見的操作。Python的os模塊下有一個listdir函數,可以很容易地實現獲取指定目錄下的所有文件和文件夾列表。本文將詳細介紹如何使用Python listdir函數獲取文件列表。
一、什麼是Python listdir函數
listdir是Python的os模塊中的一個函數,用於返回指定目錄下的文件和文件夾列表。
語法:
os.listdir(path)
其中,path為要獲取文件列表的目錄。返回值是一個列表,其中包含了該目錄下所有文件和文件夾的名稱。
二、如何使用Python listdir函數
1. 獲取指定目錄下的所有文件和文件夾列表
在Python中使用os模塊的listdir函數可以很方便的獲取指定目錄下的所有文件列表:
import os path = "C:/Users/Administrator/Desktop" #指定文件目錄 files= os.listdir(path) #得到文件夾下的所有文件名稱 for file in files: #遍歷文件夾 print(file) #打印文件名
上述代碼中,指定了一個文件目錄path,然後使用os模塊的listdir函數獲取該目錄下的所有文件和文件夾的名稱,並使用for循環打印每一個文件和文件夾名稱。
2. 獲取指定目錄下的所有文件列表
如果需要獲取指定目錄下的所有文件列表(不包括子目錄),可以使用os模塊的path模塊下的isfile函數判斷是否為文件。更改上面代碼如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目錄 files= os.listdir(path) #得到文件夾下的所有文件名稱 for file in files: #遍歷文件夾 if os.path.isfile(file): #判斷是否是文件 print(file) #打印文件名
上述代碼中,使用os模塊的path模塊下的isfile函數判斷是否為文件,如果是文件則打印文件名。
3. 獲取指定目錄下的所有文件夾列表
如果需要獲取指定目錄下的所有文件夾列表(不包括子目錄),可以使用os模塊的path模塊下的isdir函數判斷是否為文件夾。更改上面代碼如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目錄 files= os.listdir(path) #得到文件夾下的所有文件名稱 for file in files: #遍歷文件夾 if os.path.isdir(file): #判斷是否是文件夾 print(file) #打印文件夾名
上述代碼中,使用os模塊的path模塊下的isdir函數判斷是否為文件夾,如果是文件夾則打印文件夾名。
4. 獲取指定目錄下的所有指定類型的文件列表
如果需要獲取指定目錄下的所有指定類型的文件列表,可以使用os模塊的path模塊下的split和extsep函數來獲取文件擴展名,判斷是否為指定的類型。更改上面代碼如下:
import os path = "C:/Users/Administrator/Desktop" #指定文件目錄 file_extension = ".txt" #指定文件類型 files= os.listdir(path) #得到文件夾下的所有文件名稱 for file in files: #遍歷文件夾 filename, extension = os.path.splitext(file) #分離文件名和擴展名 if extension == file_extension: #判斷是否是指定類型的文件 print(file) #打印文件名
上述代碼中,使用os模塊的path模塊下的split和extsep函數分離文件路徑和擴展名,然後判斷擴展名是否為指定類型。
三、總結
本文介紹了Python中使用listdir函數獲取文件列表的方法。具體包括了如何獲取指定目錄下的所有文件和文件夾列表,如何獲取指定類型的文件列表,以及如何獲取指定目錄下的所有文件夾列表。
在實際開發中,listdir函數非常實用,可以用於很多文件處理的場景,如遍歷文件夾,刪除文件,複製文件等。因此,我們建議Python開發者熟練掌握listdir函數的使用方法。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/160697.html