Python是一種高級編程語言,可以用於多種用途,例如Web開發、機器學習和數據分析。在本文中,我們將介紹如何使用Python查看所有的文件。
一、os.walk()函數
Python中的os模塊提供了許多有用的函數,其中最常用的函數之一是os.walk()。該函數可以遞歸地遍歷給定目錄下的所有子目錄和文件,並返回一個三元組(root, dirs, files),其中root是當前目錄的路徑,dirs是當前目錄中的子目錄,files是當前目錄中的文件。
import os def print_files(start_dir): for root, dirs, files in os.walk(start_dir): for file in files: print(os.path.join(root, file))
上述代碼展示了如何使用os.walk()函數打印出指定目錄下的所有文件名。
二、glob.glob()函數
除了os.walk()函數,Python還提供了另一個有用的函數,即glob.glob()函數。該函數返回與給定模式匹配的所有文件名,可以使用通配符’*’來匹配任意字符。
import glob def print_files(pattern): files = glob.glob(pattern) for file in files: print(file)
上述代碼展示了如何使用glob.glob()函數打印出與給定模式匹配的所有文件名。
三、利用os.listdir()函數
如果只需要列出指定目錄下的文件名而不需要遞歸地遍歷子目錄,可以使用os.listdir()函數。
import os def print_files(path): files = os.listdir(path) for file in files: print(os.path.join(path, file))
上述代碼展示了如何使用os.listdir()函數打印出指定目錄下的所有文件名。
四、使用os.scandir()函數
Python 3.5引入了os.scandir()函數,它比os.listdir()函數更快且更可靠。相比於os.listdir()函數返回的僅僅是文件名列表,os.scandir()返回的是一個’DirEntry’對象列表,這個對象代表了文件和子目錄,你可以通過調用它的方法來獲取更多的屬性,如文件大小、文件類型等。
import os def print_files(path): with os.scandir(path) as it: for entry in it: if entry.is_file(): print(entry.name)
上述代碼展示了如何使用os.scandir()函數打印出指定目錄下的所有文件名。
總結
本文介紹了使用Python查看所有的文件的四種方法,分別是os.walk()函數、glob.glob()函數、os.listdir()函數和os.scandir()函數。每種方法都有自己的特點,可以根據實際情況選擇合適的方法。
原創文章,作者:RQLZG,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/374782.html