如何从Python中的单个文件夹中读取多个txt文件?

时间:2017-09-14 16:54:11

标签: python file

如何从Python中的单个文件夹中读取多个txt文件?

我尝试使用以下代码,但它无效。

import glob

import errno

path = '/home/student/Desktop/thesis/ndtvnews/garbage'

files = glob.glob(path)

for name in files:
    try:
        with open(name) as f:
            print name

        for line in f:
            print line,

        f.close()

    except IOError as exc:
        if exc.errno != errno.EISDIR:
            raise

1 个答案:

答案 0 :(得分:1)

你的glob不正确。您应该在路径末尾添加/*以选择路径中的所有文件(或目录),然后检查它们是否为os.path.isfile的文件。类似的东西:

from os.path import isfile
files=filter(isfile,glob.glob('%s/*'%path))

您还有实际开放的问题。当您的with语句结束时,该文件将关闭,f将无法再访问。您对该文件所做的任何操作都应在with语句下。你不应该明确地关闭它。