【发布时间】:2022-12-09 13:47:32
【问题描述】:
我有一个文件夹,其中每个文件都以数字命名(即 img 1、img 2、img-3、4-img 等)。我想通过以下方式获取文件精确的字符串(所以如果我输入“4”作为输入,它应该只返回带有“4”的文件,而不是任何包含“14”或“40”的文件,例如。我的问题是程序返回所有文件,只要它匹配字符串。注意,数字并不总是在同一个位置(对于相同的文件,它在末尾,对于其他文件,它在中间)
例如,如果我的文件夹有 5 个文件 ['ep 4', 'xxx 3', 'img4', '4xxx', 'ep-40', file.mp4, file 4.mp4 ],我只想返回[第 4 集,img4,4xxx,文件 4.mp4]
这是我所拥有的(在这种情况下我只想返回所有 mp4 文件类型)
for (root, dirs, file) in os.walk(source_folder):
for f in file:
if '.mp4' and ('4') in f:
print(f)
试过 == 而不是 in
【问题讨论】:
-
if '.mp4' and ('4') in f这不是检查多个条件的方法。改用这个:if 'mp4' in f and '4' in f。但是,在这种情况下,“4”已经在“mp4”中,因此特定条件是无用的。