gpt4 book ai didi

python - 用 SED 替换字符串

转载 作者:行者123 更新时间:2023-11-28 22:03:25 25 4
gpt4 key购买 nike

在一个文件(.py 文件)中,我有一些名称不同的类,但有些类具有公共(public)变量:

class myClass1:
f1 = '512kB'
f2 = 2
f3 = 'something1'

class myClass2:
f1 = '512kB'
f2 = 6
f3 = 'something2'

我想写一个 bash 脚本,用 SED 来替换一些字符串。问题是我想先找到 myClass2,然后将 f1 = '512kB' 替换为 f1 = '1MB'

如果我用

sed -i 's/f1 = '512kB'/f1 = '1MB'/g' /path/to/file

它将为两个类替换该字符串。

最佳答案

 sed -i "/^class myClass2:/,/^class/s/f1 = '512kB'/f1 = '1MB'/" path/to/file.py

这假设您的类声明从不缩进。

但是,考虑到这是 Python,编写一个简单的子例程来设置变量的值而不是硬编码不是更有意义吗?

关于python - 用 SED 替换字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9189020/

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