cinap_lenrekadd hg and python4bb9e2215 years agoHistory
51 lines · 1.8 KB · TeX
RawDownload
\section{\module{glob} ---         \UNIX{} style pathname pattern expansion} \declaremodule{standard}{glob}\modulesynopsis{\UNIX\ shell style pathname pattern expansion.}  The \module{glob} module finds all the pathnames matching a specifiedpattern according to the rules used by the \UNIX{} shell.  No tildeexpansion is done, but \code{*}, \code{?}, and character rangesexpressed with \code{[]} will be correctly matched.  This is done byusing the \function{os.listdir()} and \function{fnmatch.fnmatch()}functions in concert, and not by actually invoking a subshell.  (Fortilde and shell variable expansion, use \function{os.path.expanduser()}and \function{os.path.expandvars()}.)\index{filenames!pathname expansion} \begin{funcdesc}{glob}{pathname}Return a possibly-empty list of path names that match \var{pathname},which must be a string containing a path specification.\var{pathname} can be either absolute (like\file{/usr/src/Python-1.5/Makefile}) or relative (like\file{../../Tools/*/*.gif}), and can contain shell-style wildcards.Broken symlinks are included in the results (as in the shell).\end{funcdesc} \begin{funcdesc}{iglob}{pathname}Return an iterator which yields the same values as \function{glob()}without actually storing them all simultaneously.\versionadded{2.5}\end{funcdesc} For example, consider a directory containing only the following files:\file{1.gif}, \file{2.txt}, and \file{card.gif}.  \function{glob()}will produce the following results.  Notice how any leading componentsof the path are preserved. \begin{verbatim}>>> import glob>>> glob.glob('./[0-9].*')['./1.gif', './2.txt']>>> glob.glob('*.gif')['1.gif', 'card.gif']>>> glob.glob('?.gif')['1.gif']\end{verbatim}  \begin{seealso}  \seemodule{fnmatch}{Shell-style filename (not path) expansion}\end{seealso}