Python模块之fileinput
2021/5/17 12:30:42
本文主要是介绍Python模块之fileinput,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一 简介
fileinput 是python 提供的一个可以快速遍历,修改一个或者多个文件的模块。我们可以使用该模块进行文本替换 并做文件备份。
二 使用
2.1 使用方法
fileinput.input (files=None, inplace=False, backup='', bufsize=0, mode='r', openhook=None)
files 为要读入的文件 或者文件列表 files=1.txt files=['1.txt','2.txt']
inplace 是原地替换与否,为True时表示重写原文件。默认为False。
backup 备份要替换的文件的后缀 backup='.bak' files='1.txt' 备份的文件名称为 1.txt.bak
mode 读写模式,默认为只读
bufsize 读写文件的缓冲区大小,默认为0 ,如果文件比较大 则需要调整该值。
import fileinput
def process(line):
do_something
for line in fileinput.input():
process(line) #处理文件的行 然后重新写入源文件
2.2 常用的函数:
fileinput.input() # 读取文件的内容
fileinput.filename() # 文件的名称
fileinput.lineno() # 当前读取行的数量
fileinput.filelineno() # 读取行的行号
fileinput.isfirstline() # 当前行是否是文件第一行
fileinput.isstdin() # 判断最后一行是否从stdin中读取
fileinput.close() # 关闭队列
2.3 例子
In [4]: for line in fileinput.input('1.txt',inplace=1,backup='.bak'):
...: print line.rstrip() + ' line'
...:
In [5]: pwd
Out[5]: u'/Users/yangyi'
In [6]: ls 1.txt*
1.txt
1.txt.bak
查看备份文件
In [7]: cat 1.txt.bak
AA:BB:CC
aa:30:6
cc:50:3
dd:20:7
bb:10:2
ee:40:4
ee:60:1
查看源文件,已经被修改了
In [8]: cat 1.txt
AA:BB:CC line
aa:30:6 line
cc:50:3 line
dd:20:7 line
bb:10:2 line
ee:40:4 line
ee:60:1 line
三 小结
本文是简单介绍了fileinput 的使用方式 ,具体更详细的内容可以参考 官方文档
这篇关于Python模块之fileinput的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-25Python编程基础:变量与类型
- 2024-11-25Python编程基础与实践
- 2024-11-24Python编程基础详解
- 2024-11-21Python编程基础教程
- 2024-11-20Python编程基础与实践
- 2024-11-20Python编程基础与高级应用
- 2024-11-19Python 基础编程教程
- 2024-11-19Python基础入门教程
- 2024-11-17在FastAPI项目中添加一个生产级别的数据库——本地环境搭建指南
- 2024-11-16`PyMuPDF4LLM`:提取PDF数据的神器