Python:通过属性名称获取静态属性

标签 python reflection introspection static-members

我有一个通过元类“模拟”静态属性的 python 类:

class MyMeta(type):
   @property
   def x(self): return 'abc'

   @property
   def y(self): return 'xyz'


class My: __metaclass__ = MyMeta

现在我的一些函数接收字符串形式的属性名称,应该从 My 中检索该属性名称。

def property_value(name):
   return My.???how to call property specified in name???

这里的重点是我不想创建 My 的实例。

非常感谢,

奥瓦内斯

最佳答案

你可以使用

getattr(My,name)

关于Python:通过属性名称获取静态属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5513896/

相关文章:

java - 合成方法有什么好处?

java - 如何从 HandlerInterceptorAdapter 检索 modelAttribute

java - 当传递枚举的字符串值时,如何在运行时访问任何已知枚举的值?

python - Python 函数如何确定是否(以及如何)显式传递 kwarg 默认值?

oop - 如何在RealBasic上实现自省(introspection)?

python - 如何检查 python 函数是否更改(在实时代码中)?

python - 无法在服务器上安装tensorflow

python - python proxy-auth 中的 phantomjs + selenium 不工作

python - JsonProperty 是否仅在访问时反序列化?

python - 如何使用pybind11在c++中调用python内置函数