python

关注公众号 jb51net

关闭
首页 > 脚本专栏 > python > python遍历目录所有文件

python遍历目录下所有文件的五种实现方法

作者:SongYuLong的博客

本文主要介绍了python遍历目录下所有文件的五种实现方法,包含os.walk(),os.scandir(),os.listdir(),glob模块和osqp模块这几种方法,具有一定的参考价值,感兴趣的可以了解一下

方法1:使用os.walk()函数递归遍历目录下所有文件。

import os
# 方法1:使用os.walk()函数递归遍历目录下所有文件。
def traverse_files(dir_path):
    for root, dirs, files in os.walk(dir_path):
        # 遍历当前目录的所有文件
        for file in files:
            file_path = os.path.join(root, file)
            print(file_path)  # 或者做其他操作
 
# 调用示例
traverse_files('/path/to/directory')

方法2:使用os.scandir()函数遍历目录下所有文件。

import os
# 方法2:使用os.scandir()函数遍历目录下所有文件。
def traverse_files(dir_path):
    with os.scandir(dir_path) as entries:
        for entry in entries:
            if entry.is_file():
                file_path = entry.path
                print(file_path)  # 或者做其他操作
 
# 调用示例
traverse_files('/path/to/directory')

方法3:使用os.listdir()函数遍历目录下所有文件。

import os
# 方法3:使用os.listdir()函数遍历目录下所有文件。
def traverse_files(dir_path):
    files = os.listdir(dir_path)
    for file in files:
        file_path = os.path.join(dir_path, file)
        if os.path.isfile(file_path):
            print(file_path)  # 或者做其他操作
 
# 调用示例
traverse_files('/path/to/directory')

方法4:使用glob模块遍历目录下所有文件。

import glob

# 方法4:使用glob模块遍历目录下所有文件。
def traverse_files(dir_path):
    file_paths = glob.glob(dir_path + '/**/*', recursive=True)
    for file_path in file_paths:
        if os.path.isfile(file_path):
            print(file_path)  # 或者做其他操作
 
# 调用示例
traverse_files('/path/to/directory')

方法5:使用osqp模块遍历目录下所有文件

import osqp
# 方法5:使用osqp模块遍历目录下所有文件
# 当前目录
base_dir = '.'
# 获取当前目录下所有文件
files = osqp.find_files(base_dir)
# 打印文件列表
for file in files:
    print(file)

到此这篇关于python遍历目录下所有文件的五种实现方法的文章就介绍到这了,更多相关python遍历目录所有文件内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文