【发布时间】:2021-08-05 19:10:50
【问题描述】:
我需要读取一系列文件,fileinput 似乎正是需要的,但后来我意识到它缺少 read 方法。
- 执行此操作的规范方法(如果有)是什么? (显式连接会很浪费。)
- 是否存在
fileinput不支持read的已知技术或安全原因?
This related question 不是重复的。
【问题讨论】:
-
你想对
read的数据做什么?如果你想要一个字符串,那么只需使用例如''.join(x for x in f)在文件输入对象上。或者做list(f)相当于readlines() -
fileimput缺少read(),因为它“实现了一个帮助类和函数,以快速在标准输入或文件列表上编写循环”——注意“编写循环”。此外,因为它支持多个输入文件,一次将其中一个或所有文件的内容读入内存几乎肯定不是设计目标(它会使它的许多方法——比如filename()和lineno()——变得毫无意义)。 -
@match 我想将它传递给另一个应用程序,该应用程序需要一个类似文件的对象。 (例如,它可能会调用
read。) -
@KennyOstrom 好链接。