python批量读取文件内容_如何使用 Python批量读取多个文件

当我们要批量读取多个文件所有内容,并把所有行打印出来时,我们可能会这样写代码:file_list = ['1.txt', '2.txt', '3.txt']for path in file_list: with open(path, encoding='utf-8') as f: for line in f: print(line)

但这样写代码不好看。Python 自带一个更好用的模块:fileinput。

如果要使用 fileinput读取列表中的多个文件,那么可以这样写代码:import fileinputfile_list = ['1.txt', '2.txt', '3.txt']with fileinput.input(files=file_list) as f: for line in f: print(line)

但如果仅仅是这样,那这个模块也并没有省多少事情。我们再来看看它的高级功能。

创建一个 read.py,其内容如下:import fileinputwith fileinput.input() as f: for line in f: print(line)

这个代码初看起来,没有读入任何文件,那么它的内容从哪里来呢?

此时我们运行,并尝试输入一些内容回车。如下图所示:

可以看出,它会自动把你输入的内容打印出来,相当于在 whileTrue里面加上了 input。

不仅如此,这段代码不做任何修改,我们在 read.py同目录下创建3个文件 1.txt 2.txt 3.txt。然后使用如下命令运行:python3 read.py 1.txt 2.txt 3.txt

运行效果如下图所示:

自动把参数对应的文件都读入并打印了出来。这里的参数可以有任意多个。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值