首页 > Python资料 博客日记

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

2024-10-22 22:00:05Python资料围观6

这篇文章介绍了097、Python 获取文件夹下的所有文件的方法,分享给大家做个参考,收藏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')

版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:jacktools123@163.com进行投诉反馈,一经查实,立即删除!

标签:

相关文章

本站推荐