In <[EMAIL PROTECTED]>, mosscliffe wrote: > ----------------------- CODE ---------------------- > import os > import glob > > filenames = [] > patterns = ('.\\t*.py', '.\\*.c??', '.\\*.txt') # Can these patterns > for glob processing be specified in the glob call *****ONE**** > for pattern in patterns: > filenames = filenames + glob.glob(pattern) # Is there a better > way for this line in joining lists *****TWO****
You can `extend()` the list instead of creating new concatenated copies in each iteration. > Ps \\ is because I needed to get the path element for my test and > windoze does not return a path element if in current directory Maybe using `os.path.abspath()` on the file names is a more portable and robust solution here. If you don't need all the functionality of `glob.glob()` you can write a simple function that takes multiple file name patterns: import fnmatch import os import re def multiglob(patterns): pattern_re = re.compile('|'.join(map(fnmatch.translate, patterns))) return [os.path.abspath(path) for path in os.listdir('.') if pattern_re.match(path)] This lacks `glob.glob()`\s special handling of patterns containing directory names though. Ciao, Marc 'BlackJack' Rintsch -- http://mail.python.org/mailman/listinfo/python-list