有没有一种方法可以在不实例化对象的情况下列出类的属性?

vwrobel:

在Python 3.5中,说我有:

class Foo:
    def __init__(self, bar, barbar):
        self.bar = bar
        self.barbar = barbar

我想["bar", "barbar"]从班上得到名单

我知道我可以做:

foo = Foo(1, 2)
foo.__dict__.keys()

["bar", "barbar"] 没有不实例化对象的方法吗?

原则:

否,因为属性是动态的(所谓的实例属性)。考虑以下,

class Foo:
    def __init__( self ):
        self.bar = 1

    def twice( self ):
        self.barbar = 2

f = Foo()
print( list(f.__dict__.keys() ) )
f.twice()
print( list(f.__dict__.keys() ) )

在第一次打印中,仅f.bar设置了属性,因此这是在打印属性键时显示的唯一属性。但是,在调用之后f.twice(),您可以创建一个属性,f然后将其打印出来并显示barbarbar

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

有没有一种方法可以在不调用__init__的情况下实例化类?

有没有一种方法可以在不运行Cargo项目的情况下列出所有测试?

有没有一种方法可以在不列出参数的情况下编写此Javascript函数?

有没有一种方法可以在不使用std :: move的情况下使用构造的类来初始化类?

有没有一种方法可以动态实例化一个类类型

有没有一种方法可以在不使用小部件的情况下访问PageState类中的页面属性

有没有一种方法可以在不使用props对象的情况下在组件之间传递属性?

在C ++中,是否有一种(新的)方法可以在不实例化实例的情况下测试类在模板中是否具有虚拟析构函数?

ObjectStream:有没有一种方法可以读取序列化对象作为属性映射?

有没有一种方法可以指定类的默认属性?

有没有一种方法可以将DataRow映射到类的对象

有没有一种方法可以模拟请求对象上的属性

有没有一种方法可以在没有虚拟的情况下使用基类指针来调用派生类函数

有没有一种方法可以在没有JavaScript的情况下动态更改内容?

有没有一种方法可以在没有全盘加密的情况下加密我的文件

有没有一种方法可以在不重写现有类名的情况下将类名添加到blazor组件?

Swift-有没有一种方法可以在不调用对象的情况下在对象上运行方法?(自?)

有没有一种方法可以在不运行整个类的情况下将类作为参数传递给函数?

有没有一种方法可以在python中为类的所有实例运行方法?

有没有一种方法可以在不禁用Java组件的组件的情况下打开其无模式JDialog的多个实例?

有没有一种方法可以将属性绑定到如果未绑定的情况下应具有的值

有没有一种方法可以在不指定每个属性并使用选择的情况下从另一个列表填充列表?

有没有一种方法可以在不使用python GIL的情况下进行序列化/反序列化

有没有一种方法可以在不安装Qt的情况下安装jupyter?

有没有一种方法可以在不命名结构的情况下使用指针在结构内部?

GDB有没有一种方法可以在不忽略模板参数的情况下打印类型?

有没有一种方法可以在不重新打开框架的情况下移除框架装饰?

有没有一种方法可以在默认情况下详细输出“ git add”?

有没有一种方法可以在不安装手册页的情况下安装OpenSSL?