gpt4 book ai didi

Python 新手 : using eval() to assign a value to a self. 变量

转载 作者:行者123 更新时间:2023-11-28 20:04:02 27 4
gpt4 key购买 nike

我是 Python 的新手,我有一个包含很多变量的类,如下所示:

class trash:

def __init__(self):
self.var1=1
self.var2=1
self.var3=1
...

def replaceByTwo(self, var_name)
self.eval(var_name) = 2

但是当我调用 replaceByTwo 时,我收到了这个:

AttributeError: 'trash' object has no attribute 'eval' 

有人知道怎么解决吗?谢谢!

最佳答案

eval 是 Python 类的内置而非默认方法。但是你要找的是setattr:

def replaceByTwo(self, var_name):
setattr(self, var_name, 2)

试用:

>>> t = trash()
>>> print(t.var2)
1
>>> t.replaceByTwo('var2')
>>> print(t.var2)
2

关于Python 新手 : using eval() to assign a value to a self. 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38154901/

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