On 5/23/25 16:05, Rob Cliffe via Python-list wrote:


On 23/05/2025 18:55, Mats Wichmann wrote:
On 5/22/25 21:04, Rob Cliffe via Python-list wrote:
It occurs to me that it might be useful if Python provided a function to search for a file with a given name in various directories (much as the import.import_lib function searches for a module in the directories in sys.path).
This function would perhaps be best placed in the os.path or os modules.
To start the ball rolling, I offer this version:
consider: os.walk, glob.glob, Path.glob


I have.  None of these are appropriate.
os.walk iterates *recursively* over a *single* directory and its subdirectories. pathlib.Path.glob so far as I can make out (I have never used pathlib) does much the same. glob.glob (so far as I can make out) does a *wildcard* search for directories matching a *single* pattern. My suggestion needs a *non-recursive* search for a *file* in a *list* of *non-wildcarded* directories.
Best wishes
Rob Cliffe

They don't give you "search in a list of directories" intrinsically, but that's simple loop, bailing out on a match, no?

pathlib's glob method is more like glob.glob than os.walk - though there's also a walk method in pathlib that's in the same spirit as os.walk. The globs are only recursive if you ask them to be, and if you don't want wildcarding, don't include any wildcard characters in the pattern.
--
https://mail.python.org/mailman3//lists/python-list.python.org

Reply via email to