我正在从配置文件中加载扩展名,就像这样;
search_ext = tuple((config.get("Miscellaneous", "media") + config.get("Miscellaneous", "meta") + config.get("Miscellaneous", "other")).split('|'))
在配置文件中,扩展列出如下;
media = .mkv | .avi | .divx | .xvid | .mov | .wmv | .mp4 | .mpg | .mpeg | .vob | .iso
meta = .nfo | .sub | .srt | .jpg | .jpeg | .gif | .txt
other = .exe | .pdf
然后使用os.walk循环遍历文件列表,使用.endswith
进行搜索if fileName.endswith(search_ext):
但它似乎总是错过最后一次扩展,例如在这种情况下它将是.pdf。通过添加像.unknown这样的虚假扩展来轻松绕过。但为什么会这样呢?它与我的元组有什么关系吗?
答案 0 :(得分:2)
剥离配置值周围的空间。 (根据config
)
media
的最后一个元素和meta
的第一个元素在没有分隔符的情况下连接在一起。 (meta
,other
)
search_ext = (
config.get("Miscellaneous", "media").strip() + '|' +
config.get("Miscellaneous", "meta").strip() + '|' +
config.get("Miscellaneous", "other").strip()
).split('|')