Re: os.path.isfile and wildcard for directory name
Hi Cameron, Ok, i'll try that :) Thanks Smaine Selon Cameron Simpson : > On 30Dec2010 09:36, smain...@free.fr wrote: > | 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 ] > [...] > > Check out the glob module: > http://docs.python.org/library/glob.html#module-glob > > Use it to do the glob, then os.path.isfile with a path constructed from > the result: > > http://docs.python.org/library/os.path.html#os.path.isfile > > Cheers, > -- > Cameron Simpson DoD#743 > http://www.cskk.ezoshosting.com/cs/ > > Any company large enough to have a research lab > is large enough not to listen to it. - Alan Kay > -- http://mail.python.org/mailman/listinfo/python-list
Re: os.path.isfile and wildcard for directory name
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
Re: os.path.isfile and wildcard for directory name
On 30Dec2010 09:36, smain...@free.fr wrote: | 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 ] [...] Check out the glob module: http://docs.python.org/library/glob.html#module-glob Use it to do the glob, then os.path.isfile with a path constructed from the result: http://docs.python.org/library/os.path.html#os.path.isfile Cheers, -- Cameron Simpson DoD#743 http://www.cskk.ezoshosting.com/cs/ Any company large enough to have a research lab is large enough not to listen to it. - Alan Kay -- http://mail.python.org/mailman/listinfo/python-list
Re: os.path.isfile and wildcard for directory name
Hello, 2010/12/30 : > How can i do the same thing (wildcard in a directory name) in python please ? You can get the contents of a directory with os.listdir and filter with fnmatch.fnmatch more or less as in the example from the documentation: - import fnmatch import os for file in os.listdir('.'): if fnmatch.fnmatch(file, '*.txt'): print file - Regards, Javier -- http://mail.python.org/mailman/listinfo/python-list
os.path.isfile and wildcard for directory name
Hi everyone, 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 ? Thanks for your help ! Smaine -- http://mail.python.org/mailman/listinfo/python-list