Python程序-显示目录中所有文件夹
在Python中,我们可以使用 pathlib 模块, os 模块和 glob 模块来显示目录中的所有文件夹。os模块包含各种函数,如 os.scandir 、 os.walk 、 os.listdir 或 glob() 以及 iglob() 等方法,用于列出目录中的所有文件夹。目录是文件系统中存储各种文件或更多文件夹的文件夹。
方法1:使用Pathlib模块
我们可以使用Path.iterdir()函数获取目录中内容的路径对象。然后我们可以迭代路径对象,并使用 path.is_dir() 方法过滤出文件夹。
语法
上面的 path() 函数获取目录的路径,并使用 iterdir() 函数迭代每个文件和目录。
示例
在下面的示例中,我们从Python的Path模块中导入 pathlib .然后,我们可以使用path.iterdir()函数获取目录内容的路径对象,然后迭代该对象以过滤出目录中的内容的路径。
输出
方法2:使用OS模块
语法
os模块的listdir()方法获取目录的路径,并返回其中特定目录路径中的所有子目录。
示例
使用os.listdir()方法 : os模块中的listdir()函数仅按默认方式返回根目录中的所有子目录。如果我们要列出任何指定目录的子目录,则需要将目录路径传递给os.listdir()函数。
输出
使用os.scandir()的方法
scandir()方法返回目录中的子目录以及文件信息。为了仅筛选出子文件夹,我们可以使用is_dir()方法,该方法检查路径是文件还是目录。ScanDir()方法快于listdir()方法。
语法
os模块的scandir()函数获取目录的路径,并返回特定目录路径中的所有子目录和文件。
示例
输出
使用os.walk()方法
walk()方法遍历目录中的所有文件并返回目录结构中的所有文件列表。默认情况下,walk函数通过从上向下迭代返回根目录中的文件。我们可以将特定路径和特定的扫描方法(自上而下或自下而上)传递给walk()函数。
语法
os模块的walk()函数以目录的路径为输入,并返回特定目录中的文件列表。
示例
输出
方法3:使用Glob模块
使用glob()方法
glob()方法使用模式匹配方法使文件和目录的列表更加高效。我们可以使用像*,.txt等通配符,这允许搜索与通配符模式匹配的文件路径。
语法
glob模块的glob()函数以目录的路径和模式作为输入,并返回与模式匹配且带文件名的特定目录中的所有文件。
示例
输出
使用iglob()方法
如果将递归参数设置为传递给iglob()函数的参数中的true,则iglob()函数用于递归地打印文件名。
语法
glob模块的iglob()函数将目录的路径和递归参数的布尔值作为true/false作为输入,并返回所有子目录中的所有文件。
示例
输出
结论
在Python中,我们了解了如何使用os、glob和pathlib模块列出目录中的所有文件和子目录。pathlib模块包含path.iterdir()函数,os模块包含os.listdir()、os.walk()和os.listdir()方法来获取指定目录中的子目录。