ToB企服应用市场:ToB评测及商务社交产业平台

标题: 097、Python 获取文件夹下的所有文件的方法 [打印本页]

作者: 农妇山泉一亩田    时间: 2024-10-7 22:07
标题: 097、Python 获取文件夹下的所有文件的方法
使用Python 获取文件夹下的所有文件,可以使用os模块或者pathlib模块。
一、使用os模块

1、引入模块:

  1. # 引入os模块
  2. import os
复制代码
2、获取指定文件夹(不含子文件夹)的方法:

  1. # 不含子文件夹
  2. def list_files_in_directory(directory):
  3.     for filename in os.listdir(directory):
  4.         filepath = os.path.join(directory, filename)
  5.         # 检查是否是文件(排除目录)
  6.         if os.path.isfile(filepath):
  7.             print(filepath)
  8. list_files_in_directory(r'C:\Users\admin\Desktop\文件夹1')
复制代码
3、获取文件夹下(含子文件夹)的所有文件的方法:

  1. # 含子文件夹
  2. def list_files(path):
  3.     for root, dirs, files in os.walk(path):
  4.         level = root.replace(path, '').count(os.sep)
  5.         indent = ' ' * 4 * level
  6.         print('{}{}/'.format(indent, os.path.basename(root)))
  7.         redundant = ' ' * 4 * (level + 1)
  8.         for f in files:
  9.             print('{}{}'.format(redundant, f))
  10. list_files(r'C:\Users\admin\Desktop\文件夹1')
复制代码
二、使用pathlib模块

1、引入模块:

  1. # 引入pathlib模块
  2. from pathlib import Path
复制代码
2、获取指定文件夹(不含子文件夹)的方法:

  1. # 不含子文件夹
  2. def list_files_in_directory(directory):
  3.     directory_path = Path(directory)
  4.     for file in directory_path.iterdir():
  5.         # 检查是否是文件(排除目录)
  6.         if file.is_file():
  7.             print(file)
  8. list_files_in_directory(r'C:\Users\admin\Desktop\文件夹1')
复制代码
3、获取文件夹下(含子文件夹)的所有文件的方法:

  1. # 含子文件夹
  2. def list_files(path):
  3.     p = Path(path)
  4.     for file in p.rglob('*'):  # 使用rglob('*')来递归地查找所有文件
  5.         print(file)
  6. # 调用
  7. list_files(r'C:\Users\admin\Desktop\文件夹1')
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4