smain...@free.fr wrote: > I'm just beginning to learn python language and i'm trying to do something > and i can't figure it out. > > I want to test if a file exists but my path contain a directory name that > differs from a server to another. > In shell i would have done something like that : > > #!/bin/bash > > mypath=/dire*/directory02/ > myfile=filename > > myfile=toto > > if [ -f $mypath/$myfile ] > then > echo "File $file exists" > fi > > > How can i do the same thing (wildcard in a directory name) in python > please ?
Given $ mkdir yadda{1..10} $ touch yadda{5,7}/alpha $ mkdir yadda{2,4}/alpha You can get a list of candidates with >>> import glob >>> candidates = glob.glob("yadda*/alpha") >>> candidates ['yadda5/alpha', 'yadda2/alpha', 'yadda4/alpha', 'yadda7/alpha'] and then use isfile() to find the actual files: >>> import os >>> [f for f in candidates if os.path.isfile(f)] ['yadda5/alpha', 'yadda7/alpha'] Peter -- http://mail.python.org/mailman/listinfo/python-list