Matt Funk wrote:
Hi Grant,
first of all sorry for the many typos in my previous email.

To clarify, I have a python list full of file names called 'files'.
Every single filename has extension='.hdf' except for one file which has
an '.hdf5' extension. When i do (and yes, this is pasted):
        for filename in files:
            if (any(filename.endswith(x) for x in extensions)):
                print filename

However, it will print all the files in list 'files' (that is all files
with file extension '.hdf'). My question is why it doesn't just print
the filename with extensions '.hdf5'?

thanks
matt

Matt, in the code above your are iterating through the files, and if an hdf5 is in the list, you print the current element. Since the hdf5 will always be in that list, for each element you print it.

test.py:

import os

files = ['a.hdf', 'b.hdf5', 'c.hdf']
hdf5 =  [_file for _file in files if os.path.splitext(_file)[1] == '.hdf5']
print hdf5



> python test.py
['b.hdf5']

JM

--
http://mail.python.org/mailman/listinfo/python-list

Reply via email to