0


097、Python 获取文件夹下的所有文件的方法

使用Python 获取文件夹下的所有文件,可以使用

os

模块或者

pathlib

模块。

一、使用

os

模块

1、引入模块:

# 引入os模块
import os

2、获取指定文件夹(不含子文件夹)的方法:

# 不含子文件夹
def list_files_in_directory(directory):
    for filename in os.listdir(directory):
        filepath = os.path.join(directory, filename)
        # 检查是否是文件(排除目录)
        if os.path.isfile(filepath):
            print(filepath)

list_files_in_directory(r'C:\Users\admin\Desktop\文件夹1')

3、获取文件夹下(含子文件夹)的所有文件的方法:

# 含子文件夹
def list_files(path):
    for root, dirs, files in os.walk(path):
        level = root.replace(path, '').count(os.sep)
        indent = ' ' * 4 * level
        print('{}{}/'.format(indent, os.path.basename(root)))
        redundant = ' ' * 4 * (level + 1)
        for f in files:
            print('{}{}'.format(redundant, f))

list_files(r'C:\Users\admin\Desktop\文件夹1')

二、使用

pathlib

模块

1、引入模块:

# 引入pathlib模块
from pathlib import Path

2、获取指定文件夹(不含子文件夹)的方法:

# 不含子文件夹
def list_files_in_directory(directory):
    directory_path = Path(directory)
    for file in directory_path.iterdir():
        # 检查是否是文件(排除目录)
        if file.is_file():
            print(file)

list_files_in_directory(r'C:\Users\admin\Desktop\文件夹1')

3、获取文件夹下(含子文件夹)的所有文件的方法:

# 含子文件夹
def list_files(path):
    p = Path(path)
    for file in p.rglob('*'):  # 使用rglob('*')来递归地查找所有文件
        print(file)

# 调用
list_files(r'C:\Users\admin\Desktop\文件夹1')
标签: python linux 前端

本文转载自: https://blog.csdn.net/mr_five55/article/details/140747651
版权归原作者 不在同一频道上的呆子 所有, 如有侵权,请联系我们删除。

“097、Python 获取文件夹下的所有文件的方法”的评论:

还没有评论