python - 检查字符串是否以列表中的一个字符串结尾

以下代码的pythonic方式是什么?

extensions = ['.mp3','.avi']
file_name = 'test.mp3'

for extension in extensions:
    if file_name.endswith(extension):
        #do stuff

我有一个模糊的内存,for 循环的显式声明可以避免并写在 if 条件中。这是真的吗?

最佳答案

虽然不广为人知,str.endswith也接受一个元组。你不需要循环。

>>> 'test.mp3'.endswith(('.mp3', '.avi'))
True

https://stackoverflow.com/questions/18351951/

相关文章:

linux - 如何在不运行 Bash 脚本的情况下对其进行语法检查?

python - 将 matplotlib 图例移到轴外使其被图形框截断

linux - 在 Ubuntu 中创建目录的符号链接(symbolic link)

python - 如何提高我的爪子检测能力?

linux - 我在哪里可以设置 crontab 将使用的环境变量?

shell - 从文件中读取随机行的简单方法是什么?

python - 将 Django 模型对象转换为 dict 并且所有字段都完好无损

python - Pandas 索引列标题或名称

linux - 如何找出给定用户的组?

python - 初始化 dict : curly brace literals {} or the