mirror of
https://github.com/python/cpython.git
synced 2024-11-28 16:45:42 +01:00
45c9df6636
rarely needed and should be avoided where possible since it doesn't behave well with some processing tools (like partparse.py).
37 lines
1.4 KiB
TeX
37 lines
1.4 KiB
TeX
\section{Standard Module \sectcode{glob}}
|
|
\label{module-glob}
|
|
\stmodindex{glob}
|
|
\renewcommand{\indexsubitem}{(in module glob)}
|
|
|
|
The \code{glob} module finds all the pathnames matching a specified
|
|
pattern according to the rules used by the \UNIX{} shell. No tilde
|
|
expansion is done, but \code{*}, \code{?}, and character ranges
|
|
expressed with \code{[]} will be correctly matched. This is done by
|
|
using the \code{os.listdir()} and \code{fnmatch.fnmatch()} functions
|
|
in concert, and not by actually invoking a subshell. (For tilde and
|
|
shell variable expansion, use \code{os.path.expanduser(}) and
|
|
\code{os.path.expandvars()}.)
|
|
|
|
\begin{funcdesc}{glob}{pathname}
|
|
Returns 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/Python1.4/Makefile}) or relative (like
|
|
\file{../../Tools/*.gif}), and can contain shell-style wildcards.
|
|
\end{funcdesc}
|
|
|
|
For example, consider a directory containing only the following files:
|
|
\file{1.gif}, \file{2.txt}, and \file{card.gif}. \code{glob.glob()}
|
|
will produce the following results. Notice how any leading components
|
|
of the path are preserved.
|
|
|
|
\bcode\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}\ecode
|