使用os模块从文件夹读取文件

时间:2019-03-24 13:28:01

标签: python

对于模式识别应用程序,我想使用os模块从另一个文件夹中读取jpeg文件并对其进行操作。

我尝试使用str(file)和file.encode('latin-1'),但它们都给我错误

我尝试过:

allLines = []

path = 'results/'
fileList = os.listdir(path)
for file in fileList:
   file = open(os.path.join('results/'+ str(file.encode('latin-1'))), 'r')
   allLines.append(file.read())
print(allLines)

但是我收到一条错误消息: 没有这样的文件或目录“ results / b'thefilename”

当我期望列出具有可访问的所需文件名的

1 个答案:

答案 0 :(得分:1)

如果您可以使用Python 3.4或更高版本,则可以使用pathlib module处理路径。

from pathlib import Path

all_lines = []
path = Path('results/')
for file in path.iterdir():
    with file.open() as f:
        all_lines.append(f.read())
print(all_lines)

通过使用with语句,即使在某个时候引发了异常,也不必手动关闭文件描述符(当前缺少的文件描述符)。