如何检索列表中每个目录中的所有文件的内容?

时间:2014-12-28 01:21:14

标签: python python-2.7 io directory

我想阅读目录中的所有文件,所以我正在执行以下操作:

path = '/thepath/of/the/files/*'
files = glob.glob(path)
for file in files:
    print file

问题在于,当我打印文件时,我没有获得任何东西;有关如何按文件返回列表中文件的所有内容的任何想法吗?

编辑:我用星号添加了路径,这应该会为你提供该路径中的所有文件和目录。

3 个答案:

答案 0 :(得分:1)

我会做以下的事情来获取文件。

import os
import glob

path = '/thepath/of/the/files/*'
files=glob.glob(path)
for file in files:
    if os.path.isfile(file):
        print file

答案 1 :(得分:1)

您的问题有点不清楚,但据我了解,您希望获取目录中所有文件的内容。试试这个:

# ...
contents = {}
for file in files:
    with open(file) as f:
        contents[file] = f.readlines()
print contents

这会创建一个dict,其中键是文件名,值是文件的内容。

答案 2 :(得分:1)

就像我前一段时间发表的评论一样,这应该有效:

contents=[open(ii).read() for ii in glob.glob(path)]

或者,如果你想要一本字典:

contents={ii : open(ii).read() for ii in glob.glob(path)}