当您拥有的所有东西都是可调用的时,是否有一种方法可以访问方法的类

金维斯

我有这样的代码:

class Foo:
    def foo(self):
        pass


class Bar:
    def foo(self):
        pass

f = random.choice((Foo().foo, Bar().foo))

如何访问BarFoo从f访问

f.__dict__几乎没有帮助,但如所repr(f)提供,<bound method Bar.foo of <__main__.Bar object at 0x10c6eec18>>'它必须是可能的,但是如何呢?

金库

每个绑定方法的__self__属性为

此方法绑定到的实例,或者 None

(从这里复制

有关绑定方法的更多信息(来自Data Model):

如果通过实例访问方法(在类命名空间中定义的函数),则会得到一个特殊对象:绑定方法(也称为实例方法)对象。...绑定方法具有两个特殊的只读属性:m.__self__是该方法在其上操作的对象...

因此,f.__self__您将获得类实例:

print(f.__self__) # <__main__.Foo object at 0x7f766efeee48>

并且type(f.__self__)f.__self__.__class__将为您提供类型对象:

print(type(f.__self__)) # <class '__main__.Foo'>

你只使用__class__旧样式类

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

视图模型绑定:当绑定到的类是抽象的时,是否有一种方法可以访问具体实现的属性?

来自分类Dev

有没有一种方法可以记录所有DOM方法调用

来自分类Dev

有没有一种方法可以访问某个类中某个类型的所有变量?

来自分类Dev

对于对象或类,是否有一种方法可以了解其所有方法?

来自分类Dev

有没有一种方法可以声明成员,使其在所有派生类中都是静态的?

来自分类Dev

有没有一种方法可以在eval中调用类方法?

来自分类Dev

SendEmail是否有一种方法可以让您拥有自定义文本,并在该命令下输出命令?

来自分类Dev

是否有另一种方法可以确保所有模块的NancyFx SSL?

来自分类Dev

有没有一种方法可以列出Git项目中所有的附加项目?

来自分类Dev

有没有一种方法可以检查类是否具有方法,然后在对象的现有实例上调用它?

来自分类Dev

使用WPF,是否有一种方法可以检测阻止GUI更新的方法调用?

来自分类Dev

调用EdmxWriter.WriteEdmx时是否有一种方法可以忽略某些实体属性

来自分类Dev

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

来自分类Dev

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

来自分类Dev

当拥有它的表单被激活/停用时,是否有一种简单的方法可以在框架中调用方法?

来自分类Dev

有没有一种方法可以从所拥有的软件包中找到需要测试的补丁?

来自分类Dev

有没有一种方法可以仅在DSpace中使用XSLT来确定项目拥有的集合的句柄?

来自分类Dev

有没有一种方法可以对类中的所有成员使用`std :: optional`

来自分类Dev

有没有一种方法可以使所有派生类彼此成为朋友?

来自分类Dev

挂载时是否有一种方法可以从React函数中分派动作?

来自分类Dev

有没有一种方法可以在调用之前检查操作是否有效?

来自分类Dev

jQuery中是否有一种方法可以选择具有“ data- *”属性名称的所有元素

来自分类Dev

有没有一种方法可以记录给定类的每个方法的每次调用?

来自分类Dev

有没有一种方法可以在类名称与全局函数相同的方法中调用全局函数?

来自分类Dev

有没有一种方法可以记录给定类的每个方法的每次调用?

来自分类Dev

在PowerShell中,是否有一种方法可以不管拒绝访问而检查路径是否有效

来自分类Dev

有没有一种方法可以键入对象,以便扩展接口的所有属性都是给定类型?

来自分类Dev

有没有一种方法可以确定某个方法是否已在Java类中被覆盖

来自分类Dev

有没有一种方法可以调用Sprite类的唯一重要参数?

Related 相关文章

  1. 1

    视图模型绑定:当绑定到的类是抽象的时,是否有一种方法可以访问具体实现的属性?

  2. 2

    有没有一种方法可以记录所有DOM方法调用

  3. 3

    有没有一种方法可以访问某个类中某个类型的所有变量?

  4. 4

    对于对象或类,是否有一种方法可以了解其所有方法?

  5. 5

    有没有一种方法可以声明成员,使其在所有派生类中都是静态的?

  6. 6

    有没有一种方法可以在eval中调用类方法?

  7. 7

    SendEmail是否有一种方法可以让您拥有自定义文本,并在该命令下输出命令?

  8. 8

    是否有另一种方法可以确保所有模块的NancyFx SSL?

  9. 9

    有没有一种方法可以列出Git项目中所有的附加项目?

  10. 10

    有没有一种方法可以检查类是否具有方法,然后在对象的现有实例上调用它?

  11. 11

    使用WPF,是否有一种方法可以检测阻止GUI更新的方法调用?

  12. 12

    调用EdmxWriter.WriteEdmx时是否有一种方法可以忽略某些实体属性

  13. 13

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

  14. 14

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

  15. 15

    当拥有它的表单被激活/停用时,是否有一种简单的方法可以在框架中调用方法?

  16. 16

    有没有一种方法可以从所拥有的软件包中找到需要测试的补丁?

  17. 17

    有没有一种方法可以仅在DSpace中使用XSLT来确定项目拥有的集合的句柄?

  18. 18

    有没有一种方法可以对类中的所有成员使用`std :: optional`

  19. 19

    有没有一种方法可以使所有派生类彼此成为朋友?

  20. 20

    挂载时是否有一种方法可以从React函数中分派动作?

  21. 21

    有没有一种方法可以在调用之前检查操作是否有效?

  22. 22

    jQuery中是否有一种方法可以选择具有“ data- *”属性名称的所有元素

  23. 23

    有没有一种方法可以记录给定类的每个方法的每次调用?

  24. 24

    有没有一种方法可以在类名称与全局函数相同的方法中调用全局函数?

  25. 25

    有没有一种方法可以记录给定类的每个方法的每次调用?

  26. 26

    在PowerShell中,是否有一种方法可以不管拒绝访问而检查路径是否有效

  27. 27

    有没有一种方法可以键入对象,以便扩展接口的所有属性都是给定类型?

  28. 28

    有没有一种方法可以确定某个方法是否已在Java类中被覆盖

  29. 29

    有没有一种方法可以调用Sprite类的唯一重要参数?

热门标签

归档