您的位置:首页 > 编程语言 > Python开发

获取特定文件路径的函数glob.glob()

2017-01-13 11:58 344 查看
《Head First Python》中有两句代码,如下:

data_files = glob.glob("data/*.txt")
athletes = athletemodel.put_to_store(data_files)


他的作用是要将
data
目录下所有的txt文件逐一读取并存储为
athlete
类的实例。
glob.glob("data/*.txt")
的作用就是返回txt文件的路径。

下面是官方文档说明:

The 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 *, ?, and character ranges expressed with [] will be correctly matched. This is done by using the os.listdir() and fnmatch.fnmatch() functions in concert, and not by actually invoking a subshell. (For tilde and shell variable expansion, use os.path.expanduser() and os.path.expandvars().)

glob.glob(pathname)

Return a possibly-empty list of path names that match pathname, which must be a string containing a path specification. pathname can be either absolute (like /usr/src/Python-1.5/Makefile) or relative (like ../../Tools//.gif), and can contain shell-style wildcards. Broken symlinks are included in the results (as in the shell).

glob.iglob(pathname)

Return an iterator which yields the same values as glob() without actually storing them all simultaneously.

For example,

consider a directory containing only the following files: 1.gif, 2.txt, and card.gif. glob() will produce the following results. Notice how any leading components of the path are preserved.

>>> import glob
>>> glob.glob('./[0-9].*')
['./1.gif', './2.txt']
>>> glob.glob('*.gif')
['1.gif', 'card.gif']
>>> glob.glob('?.gif')
['1.gif']
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python glob函数