最近有小伙伴问小编一个问题,在有多个文件的情况下怎么才可以批量的将它们打开逐个读取。而python内一般读取文件都是使用内置函数open()或者其他模块内的方法,一次都是读取一个。而批量读取文件就得用到一些特殊方法了,下文有详细示例和解析。

Python批量读取文件怎么做?Python怎么实现多个文件逐个读取

一、fileinput模块介绍

在python之中有很多的内置模块以及第三方库可以去使用,在遇到不知道如何解决的需求时首先要想到的就是有没有能够直接去使用的模块和方法来实现它,而批量打开文件并读取的操作就是能够通过fileinput模块来实现。

该模块从名字上来看就是文件输入的意思,而它也提供了input方法,该方法里面可以去创建搓个文件输入流。实际上也就是传入文件路径来创建文件对象,语法如下所示:

fileinput.input(files=None, inplace=False, backup='', bufsize=0, mode='r', openhook=None)

二、使用实例

该模块中最为核心的方法就是input()了,其中files参数后面需要接收的值可以是单个字符串格式的文件路径,也可以是将文件路径字符串以元组结构包括起来,代码示例如下所示:

import fileinput
for line in fileinput.input(files=('info.txt', 'test.txt')):
    print(fileinput.filename(), fileinput.filelineno(), line, end='')
fileinput.close()

从上面代码示例中来看就可以知道,虽然input()方法能够批量读取多个文件,但是每一次实际上操作也是之后一个文件而已,还需要使用for循环来逐个对其处理才行,而循环之中的模块方法就是用来获取当前打开文件名称以及文件行号的。

不过这个方法也有一些缺点,那就是不能够去指定文件编码格式,文件编码必须为utf-8才能够正常的读取并显示内容。

以上就是关于“Python批量读取文件怎么做?Python怎么实现多个文件逐个读取”的全部内容了,希望对你有所帮助。

更多python相关文章请访问分类:python

【版权声明】本文图文出自大盘站@dapan.cc,转载请注明出处!