随着计算机存储能力的不断提高和文件数量的增加,文件管理变得越来越重要。在处理大量文件时,文件遍历变成了一件非常繁琐的事情,这时候Python Walk Top就派上用场了。
Python Walk Top是一个Python模块,它可以帮你快速遍历指定文件夹下全部的文件,同时可以根据指定的条件,从中筛选出特定的文件。它支持的功能非常分散,让你快速、轻松实现你的文件遍历需求。
一、快速遍历文件夹下全部文件
import os def walk_all_files(dirname): files = [] for root, dirs, file_names in os.walk(dirname): for filename in file_names: files.append(os.path.join(root,filename)) return files files = walk_all_files("/Users/username/Documents") print(files)
这段代码可以遍历指定文件夹下全部文件,并返回一个由文件路径组成的列表。
二、根据文件名关键词筛选文件
import os def walk_files_with_keyword(dirname, keyword): files = [] for root, dirs, file_names in os.walk(dirname): for filename in file_names: if keyword in filename: files.append(os.path.join(root,filename)) return files files = walk_files_with_keyword("/Users/username/Documents", "report") print(files)
这段代码可以遍历指定文件夹下所有文件,找出文件名包含关键词的文件,返回一个由符合条件的文件路径组成的列表。
三、根据文件类型筛选文件
import os def walk_files_with_extname(dirname, ext_name): files = [] for root, dirs, file_names in os.walk(dirname): for filename in file_names: if filename.endswith(ext_name): files.append(os.path.join(root,filename)) return files files = walk_files_with_extname("/Users/username/Documents", ".pdf") print(files)
这段代码可以遍历指定文件夹下所有文件,找出文件类型符合条件的文件,返回一个由符合条件的文件路径组成的列表。
四、根据文件大小筛选文件
import os def walk_files_with_size(dirname, min_size, max_size): files = [] for root, dirs, file_names in os.walk(dirname): for filename in file_names: file_path = os.path.join(root,filename) file_size = os.path.getsize(file_path) // 1024 // 1024 # 转换为MB单位 if file_size >= min_size and file_size <= max_size: files.append(file_path) return files files = walk_files_with_size("/Users/username/Documents", 10, 20) print(files)
这段代码可以遍历指定文件夹下所有文件,找出文件大小符合条件的文件,返回一个由符合条件的文件路径组成的列表。这里的文件大小以MB为单位。
五、根据创建时间筛选文件
import os import time def walk_files_with_ctime(dirname, start_time, end_time): files = [] for root, dirs, file_names in os.walk(dirname): for filename in file_names: file_path = os.path.join(root,filename) file_ctime = os.path.getctime(file_path) if file_ctime >= start_time and file_ctime <= end_time: files.append(file_path) return files start_time = time.mktime(time.strptime("2022-01-01 00:00:00", "%Y-%m-%d %H:%M:%S")) end_time = time.time() # 表示当前时间 files = walk_files_with_ctime("/Users/username/Documents", start_time, end_time) print(files)
这段代码可以遍历指定文件夹下所有文件,找出文件创建时间符合条件的文件,返回一个由符合条件的文件路径组成的列表。这里的起始时间和结束时间需使用time模块进行转换。
六、总结
通过Python Walk Top,我们可以快速遍历指定文件夹下全部文件,并筛选出我们需要的特定文件。不同的筛选条件可以满足不同的需求,让文件遍历变得简单易行。