首页 > 后端开发 > Python教程 > 在 Python 中迭代时可以就地修改文件行吗?

在 Python 中迭代时可以就地修改文件行吗?

Patricia Arquette
发布: 2024-12-04 13:24:11
原创
660 人浏览过

Can I Modify File Lines In-Place While Iterating in Python?

就地修改文件中的行

是否可以按顺序逐行解析文件并就地修改行迭代通过文件?

答案:

是的,这可以通过使用备份文件来模拟,如在 Python 标准库中的 fileinput 模块中实现的那样。

示例代码:

考虑以下脚本从提供的文件或标准输入中删除不满足 some_condition 函数指定的特定条件的行:

#!/usr/bin/env python
# grep_some_condition.py
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print(line, end="")  # This outputs modified lines to the current file
登录后复制

使用示例:

要使用此脚本,执行以下命令:

$ python grep_some_condition.py first_file.txt second_file.txt
登录后复制

执行后,first_file.txt 和 secondary_file.txt 都会被修改仅包含满足 some_condition 谓词的行。

以上是在 Python 中迭代时可以就地修改文件行吗?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板