python - 这个方法从其他类调用方法是否正确?
问题描述
我是python oops的新手。这种方法调用其他类的方法是否正确。代码如下所示
class Example():
def function(self):
print("foo")
class Example2():
def function2:
Example.function(Example)
解决方案
不是,因为您定义的函数是一个实例方法。在这种情况下,正确的方法是:
class Example2():
Example().function()
或者这个(可读性较差)
class Example2():
Example.function(Example())
另一种选择,因为self
从未在 中使用过function
,所以将其定义为静态方法或类方法:
class Example():
@staticmethod
def function():
print("foo")
然后你可以这样称呼它:
class Example2():
Example.function()
注意:所有这些仅在定义期间运行,Example2
因为它不在任何函数内部Example2
推荐阅读
- c++ - 是否可以用 C++ 中的另一个线程终止一个线程?
- php - php 文件,公共函数,数组,添加一些 css
- javascript - Firefox 扩展:允许打开新标签页
- asp.net - 无法在其他脚本之前加载 jquery
- angular - 连接丢失时文档中缺少重新连接功能
- asp.net-core-2.0 - aspnet core azure function not starting with string array in local.settings.json
- excel - 如何在Excel中对指定数字以上的金额求和
- testing - Using multiple `--tests`
- node.js - Nodejs Multer diskStorage not working - why destination targeting temp folder and not uploading
- ontology - Create ontology using rules in protege