Check if string ends with one of the strings from a list
What is the pythonic way of writing the following code?
extensions = ['.mp3','.avi'] file_name = 'test.mp3' for extension in extensions: if file_name.endswith(extension): #do stuff
I have a vague memory that the explicit declaration of the
for loop can be avoided and be written in the
if condition. Is this true?
Though not widely known, str.endswith also accepts a tuple. You don't need to loop.
>>> 'test.mp3'.endswith(('.mp3', '.avi')) True