python中利用os库获取路径下文件名后,判断条件有两个怎么写
时间: 2024-09-26 17:17:30 浏览: 23
在Python中,你可以使用`os`库中的`listdir()`函数获取指定路径下的所有文件和目录名称。如果你想对这些名字做进一步处理,比如同时判断是否为文件(非目录)并且满足特定的文件扩展名或大小等条件,可以结合其他操作完成。这里是一个示例:
```python
import os
def filter_files(path, file_extension=None, min_size=None):
# 获取路径下的所有文件名
filenames = [f for f in os.listdir(path) if os.path.isfile(os.path.join(path, f))]
# 如果指定了文件扩展名,过滤出符合条件的文件
if file_extension:
filenames = [f for f in filenames if f.endswith(file_extension)]
# 如果指定了最小文件大小,过滤出大于或等于这个大小的文件
if min_size and min_size > 0:
filenames = [f for f in filenames if os.path.getsize(os.path.join(path, f)) >= min_size]
return filenames
# 使用示例
path = '/path/to/directory'
extensions = ['.txt', '.pdf'] # 指定的文件扩展名列表
min_size = 1024 * 1024 # 指定的最小文件大小 (MB)
filtered_files = filter_files(path, extensions, min_size)
```
在这个例子中,`filter_files`函数接受三个参数:文件夹路径、文件扩展名列表和最小文件大小(默认无限制)。它会返回满足条件的文件名列表。
阅读全文