gpt4 book ai didi

python 通过 name-as-string -inverse eval 访问变量

转载 作者:行者123 更新时间:2023-12-01 04:50:07 24 4
gpt4 key购买 nike

如果唯一给出的变量是它的字符串名称,是否有可能以任何方式影响可访问变量?

>>> class a_class:
x = 1
>>> string = 'a_class.x'
>>> eval(string)
1
>>> y = inverse_eval(string)
>>> y = 2 #would imply that a_class.x = 2 from now on

最佳答案

这是一种方法:

>>> c, v = string.split('.')
>>> setattr(locals()[c], v, 2)

我们可以验证它是否有效:

>>> a_class.x
2

关于python 通过 name-as-string -inverse eval 访问变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28651412/

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