如何通过Python类实例调用其方法?
- 内容介绍
- 文章标签
- 相关推荐
本文共计913个文字,预计阅读时间需要4分钟。
通过前面的学习,我们了解到类的方法大致分为三类,分别是类方法、实例方法和静态方法。其中,实例方法使用频率最高。我们知道,实例方法的调用方式有两种,既可以采用类对象调用,也可以直接使用实例对象调用。
通过前面的学习,类方法大体分为 3 类,分别是类方法、实例方法和静态方法,其中实例方法用的是最多的。我们知道,实例方法的调用方式其实有 2 种,既可以采用类对象调用,也可以直接通过类名调用。通常情况下,我们习惯使用类对象调用类中的实例方法。但如果想用类调用实例方法,不能像如下这样:
class CLanguage:
def info(self):
print("我正在学 Python")
#通过类名直接调用实例方法
CLanguage.info()
运行上面代码,程序会报出如下错误:
Traceback (most recent call last):
File "D:\python3.6\demo.py", line 5, in <module>
CLanguage.info()
TypeError: info() missing 1 required positional argument: 'self'
读者想想也应该明白,self 参数需要的是方法的实际调用者(是类对象),而这里只提供了类名,当然无法自动传值。
本文共计913个文字,预计阅读时间需要4分钟。
通过前面的学习,我们了解到类的方法大致分为三类,分别是类方法、实例方法和静态方法。其中,实例方法使用频率最高。我们知道,实例方法的调用方式有两种,既可以采用类对象调用,也可以直接使用实例对象调用。
通过前面的学习,类方法大体分为 3 类,分别是类方法、实例方法和静态方法,其中实例方法用的是最多的。我们知道,实例方法的调用方式其实有 2 种,既可以采用类对象调用,也可以直接通过类名调用。通常情况下,我们习惯使用类对象调用类中的实例方法。但如果想用类调用实例方法,不能像如下这样:
class CLanguage:
def info(self):
print("我正在学 Python")
#通过类名直接调用实例方法
CLanguage.info()
运行上面代码,程序会报出如下错误:
Traceback (most recent call last):
File "D:\python3.6\demo.py", line 5, in <module>
CLanguage.info()
TypeError: info() missing 1 required positional argument: 'self'
读者想想也应该明白,self 参数需要的是方法的实际调用者(是类对象),而这里只提供了类名,当然无法自动传值。

