Python:有没有办法反射性地列出一个类的所有属性

标签 python reflection swig

给定一个类

class MyClass:
    text = "hello"
    number = 123

python 中有没有一种方法可以检查 MyClass 并确定它具有两个属性 textnumber。我不能使用像 inspect.getSource(object) 这样的东西,因为我要获取它的属性的类是使用 SWIG 生成的(所以它们隐藏在 .so :) 中)。

所以我真的在寻找与 Java 的 [Class.getDeclardFields][1]

等价的东西

任何帮助将不胜感激,否则我将不得不使用 SWIG + JAVA 而不是 SWIG + Python 来解决这个问题。

最佳答案

我通常只使用dir(MyClass)。也适用于实例化对象。

编辑: 我应该提到这是我用来确定我的对象是否正确创建的速记函数。如果您以编程方式执行此操作,则可能需要更仔细地查看反射 API。

它也可能不适用于链接库。

关于Python:有没有办法反射性地列出一个类的所有属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2612257/

相关文章:

python - 如何修复 Django-allauth settings.py contrib 语法错误?

c# - 为什么 EventInfo.RemoveEventHandler 抛出 NullReferenceException?

.net - 获取在其上声明的属性内的属性名称

c# - C# .net Core/5 应用程序中的跨平台 C++

python - Pandas :按两列分组,将第一列组中的第一个值相加

python - 如何前向声明一个函数以避免后面定义的函数出现 `NameError` s?

python - Python 是否有一个 toString() 等价物,我可以将一个类转换为字符串吗?

java - 将子类型中类型参数的注释链接到父类(super class)型中声明类型参数

c++ - 在 SWIG 中包装 C++ 结构模板

python - 将 char* 中的非垃圾值从 C 函数返回到 Swig 中的 python