fileinput:一个txt文件的Python库
文件处理和输入流时,Python中的fileinput
模块是一个非常有用的工具。fileinput
模块允许迭代处理多个文件,同时还可以处理标准输入流。以下是Python中fileinput
模块的五个常见用法。
1. 逐行迭代文件
fileinput
模块可以用于逐行迭代处理文件中的内容。
import fileinput for line in fileinput.input('data.txt'): print(line, end='')
输出:
2. 替换文件中的文本
fileinput
模块还可以用于在文件中替换指定的文本。如何将文件中的"old"替换为"new":
import fileinput for line in fileinput.input('data.txt', inplace=True): line = line.replace('data', 'new') print(line, end='')
输出(文件data.txt被修改):
3. 处理多个文件
fileinput
模块可以处理多个文件,而不仅限于单个文件。如何逐行读取多个文件的内容:
import fileinput for line in fileinput.input(['anve.txt', 'case.txt', 'data.txt'], encoding="utf-8"): print(line, end='')
输出:
4. 记录当前文件名和行号
fileinput
模块可以记录当前处理的文件名和行号。如何打印每行的文件名和行号:
import fileinput for line in fileinput.input('data.txt', encoding="utf8"): print(f'File: {fileinput.filename()}, Line: {fileinput.filelineno()}, Content: {line}', end='')
输出: