fileinput:一个txt文件的Python库

文件处理和输入流时,Python中的fileinput模块是一个非常有用的工具。fileinput模块允许迭代处理多个文件,同时还可以处理标准输入流。以下是Python中fileinput模块的五个常见用法。

1. 逐行迭代文件

fileinput模块可以用于逐行迭代处理文件中的内容。

1
2
3
4
import fileinput
 
for line in fileinput.input('data.txt'):
    print(line, end='')

输出:

 

2. 替换文件中的文本

fileinput模块还可以用于在文件中替换指定的文本。如何将文件中的"old"替换为"new":

1
2
3
4
5
import fileinput
 
for line in fileinput.input('data.txt', inplace=True):
    line = line.replace('data', 'new')
    print(line, end='')

输出(文件data.txt被修改):

 

3. 处理多个文件

fileinput模块可以处理多个文件,而不仅限于单个文件。如何逐行读取多个文件的内容:

1
2
3
4
import fileinput
 
for line in fileinput.input(['anve.txt', 'case.txt', 'data.txt'], encoding="utf-8"):
    print(line, end='')

 输出:

 

4. 记录当前文件名和行号

fileinput模块可以记录当前处理的文件名和行号。如何打印每行的文件名和行号:

1
2
3
4
import fileinput
 
for line in fileinput.input('data.txt', encoding="utf8"):
    print(f'File: {fileinput.filename()}, Line: {fileinput.filelineno()}, Content: {line}', end='')

输出:

 

posted @   北京测试菜鸟  阅读(57)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示