我正在从一个子目录中提取项,该子目录包含不同格式和不同后缀的音频文件,例如_master
或_128k
。你知道吗
我在代码的上面指定了一个允许扩展名的列表(例如.mp3
),以便只提取正确格式的文件进行处理。你知道吗
我还有一个包含文件名后缀(例如_syndication
)的列表(suffexexcluded),我明确希望从进一步处理中排除这些后缀。你知道吗
我怎样才能最好地写出一行有效地做到:
if fileExtension in filesAllowed and [LIST OF EXCLUDED SUFFIXES] not in fileName:
在这个if
子句中,是否有一种简洁、简洁、优雅(pythonic)的方法来迭代我的排除列表,或者我是否需要设置一个辅助循环来测试每个项?你知道吗
您可以边过滤边传递要保留的扩展名的元组,并使用any过滤这些扩展名,以从排除的子字符串列表中删除任何具有匹配扩展名但不包含任何子字符串的文件。你知道吗
只需对目录内容进行一次传递,无需首先构建列表。你知道吗
如果您想替换禁止的子字符串,而不只是排除,您可以使用回复sub地址:
您可以使用
any
和生成器表达式来检查所有后缀。您还可以使用几个临时变量来提高可读性。你知道吗any
中的表达式生成一系列的bool
,并且any
检查其中是否有True
。你知道吗相关问题 更多 >
编程相关推荐