一、os.listdir函數介紹
os模塊是Python中一個很重要的模塊,它提供了訪問操作系統功能的接口。其中,os.listdir函數用於返回指定路徑下的所有文件和目錄的名稱列表。
os.listdir函數的語法如下:
import os os.listdir(path)
其中,path表示要查看的目錄的路徑。該函數返回的結果是一個列表,其中每個元素是指定路徑下的文件或目錄的名稱。
二、os.listdir函數的使用
我們可以使用os.listdir函數來讀取某個目錄下的所有文件和目錄。
例如,我們有一個名為“MyFolder”的目錄,它包含了兩個文件“file1.txt”和“file2.csv”,以及一個子目錄“SubFolder”:
MyFolder/ |-- file1.txt |-- file2.csv `-- SubFolder/ |-- subfile1.csv |-- subfile2.txt `-- subfile3.xlsx
下面是使用os.listdir函數讀取“MyFolder”目錄下的所有文件和目錄的代碼:
import os path = "MyFolder/" files = os.listdir(path) for file in files: print(file)
上述代碼執行結果如下:
file1.txt file2.csv SubFolder
注意,os.listdir函數返回的列表中包含了子目錄的名稱。
三、過濾指定文件類型
有時候,我們只需要讀取指定類型的文件,可以通過對os.listdir函數返回的列表進行篩選來實現。
例如,我們只需要讀取“MyFolder”目錄下的所有CSV文件,可以在for循環中添加一個判斷條件:
import os path = "MyFolder/" files = os.listdir(path) for file in files: if file.endswith(".csv"): print(file)
上述代碼執行結果如下:
file2.csv subfile1.csv
注意,os.listdir函數返回的列表中包含了子目錄的名稱,我們可以使用os.path.join函數來拼接完整的路徑以便讀取子目錄中的文件。
import os path = "MyFolder/" files = os.listdir(path) for file in files: if file.endswith(".csv"): print(os.path.join(path, file))
上述代碼執行結果如下:
MyFolder/file2.csv MyFolder/SubFolder/subfile1.csv
四、總結
os.listdir函數是Python中讀取目錄信息的常用函數,它可以返回指定路徑下的所有文件和目錄的名稱列表。我們可以通過對其返回結果進行篩選來讀取指定類型的文件或目錄。
下面是完整的讀取“MyFolder”目錄下所有CSV文件的代碼示例:
import os path = "MyFolder/" files = os.listdir(path) for file in files: if file.endswith(".csv"): print(os.path.join(path, file))
原創文章,作者:DFKMO,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/317077.html