python - 如何不在 for 循环中显示特定值?
问题描述
我将所有文件名列出到 Python 中的列表中。
这是我当前的代码:
import os
from os.path import isfile, join
test = 'C:/Users/Nelly/Desktop/test folder'
one = [f for f in os.listdir(test) if isfile(join(test, f))]
print(one)
上面的代码返回了所有文件名的列表。我有一个我不想返回的特定值,即Thumbs.db
. 不确定它是什么,但它不应该在列表中。
我该如何排除它?
解决方案
只需在您的理解中添加一个附加条件:
one = [f for f in os.listdir(test) if isfile(join(test, f)) and not f == 'Thumbs.db']
或者如果您只想过滤扩展名:
one = [f for f in os.listdir(test) if isfile(join(test, f)) and not f.endswith('.db')]
推荐阅读
- c++ - 警告视为错误(可能在此函数中未初始化使用)
- php - Laravel 资源 whenLoaded hasManyTrough 关系
- javascript - 如何检测嵌入在 WordPress 中的 MUX 视频是流式传输还是播放固定长度的视频?
- javascript - 使用 Jest 在全局范围内声明的测试变量
- ruby-on-rails - Elasticsearch 6.8:将渗透器添加到具有“join”类型的“parent_mapping”字段的索引时获得“mapper_parsing_exception”
- security - 计算 MTTR(天)
- javascript - WKWebView evaluateJavaScript 返回错误的 JavaScript 对象
- excel - 刷新电源查询然后数据透视表
- libtorch - Libtorch,如何在特定的暗淡处索引张量?
- android - Xamarin Android 托儿所大小