python - 列出目录中的所有文件 - 按大小过滤

标签 python python-2.7

我试图获取所有大于 20kb 的文件。
我尝试了以下但它返回所有文件,即使它们小于 20kb:

dir = 'C:\\some\\path'
filter(lambda x:os.path.getsize>20000L, [os.path.join(dir, x) for x in os.listdir(dir)])

最佳答案

lambda 内部的表达式没有使用它的参数。事实上,

lambda x: os.path.getsize > 20000

将函数 getsize 与一个整数进行比较。那应该是:

lambda x: os.path.getsize(x) > 20000

关于python - 列出目录中的所有文件 - 按大小过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29963294/

相关文章:

python - kivy:在幻灯片过渡开始时播放声音,并在按下按钮时停止

java - 尽管 python 代码正确,但仍从 nifi ExecuteScript 处理器获取语法错误

mysql - 为什么 Django 在 Change List View Page 中进行不必要的 SQL 查询?

python - 创建 3 阶 numpy 数组

python - 在嵌套字典列表中添加平均值的键

python - 删除 sudo 来运行 python 脚本

python - 如何从 C 中找到 Python 函数的参数数量?

python - 无法删除 pandas DataFrame 中的部分字符串

python - 用Python中的值更新字典列表中所有匹配的键

如果 'dialog-bmp' 是 'dialog-bmp',Python 将返回 false