python如何通过修改变量的形式,修改另一个py文件?

比如一个文件是

class A:
    name = "ALEX"

操作它的文件是

from test import A

A.name = "TOM"

然后通过某种方式就可以把A文件的name修改掉,用open操作需要正则匹配,感觉有点麻烦,不知道有没有简便方法

阅读 6.2k
2 个回答

用replace不行吗 replace("对应name的值","需要修改的值")

通过读写yaml文件的方法

# test.yaml
name: "ALEX"
# test.py
class A:
    def __init__(self):
        with open("test.yaml", "r") as yaml_file:
            yaml_obj = yaml.load(yaml_file.read())
        self._name = yaml_obj["name"]
    
    @property
    def name(self):
        return self._name

    @name.setter
    def name(self, value):
        with open("test.yaml", "w") as yaml_file:
            yaml_obj["name"] = value
            yaml.dump(yaml_obj, yaml_file)
        self._name = value
# main.py
from test import A

a = A()
a.name = "TOM"

仅供参考

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题