gpt4 book ai didi

python - 文件操作、查找单词和棘手的替换

转载 作者:行者123 更新时间:2023-12-01 06:17:43 26 4
gpt4 key购买 nike

我有这样的文件

hostname ser1-xyz
myuser name
passwd secret
group 1234

hostname ser2-xyz
myuser name
passwd secret
group 2345

我需要找到名为“ser1-xyz”的主机第一次出现的行并将其修改为“ser1”并将其组值增加 1

最终文件如下所示:

hostname ser1
myuser name
passwd secret
group 1235

hostname ser2-xyz
myuser name
passwd secret
group 2345

目前我正在跟踪代码,可以将“ser1-xyz”修改为“ser1”

        for line in fileinput.FileInput(fn,inplace=1):
line = line.replace(search,replace)

但是如何增加团队值(value)呢?

最佳答案

单向

import fileinput
f=0
for line in fileinput.input("file",inplace=0):
if "hostname" in line and "ser1-xyz" in line:
line=line.replace("ser1-xyz","ser1")
f=1
if f and "group" in line:
a=line.rstrip().split(" ")
a[-1]=str(int(a[-1])+1)
line=' '.join(a)
f=0
print line.rstrip()

输出

$ ./python.py
hostname ser1
myuser name
passwd secret
group 1235

hostname ser2-xyz
myuser name
passwd secret
group 2345

inplace=0 更改为 inplace=1 以进行就地编辑。

关于python - 文件操作、查找单词和棘手的替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2310014/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com