在上篇博客的在线编程中需要实例化对象,然后调用类中定义的方法,这其中遇到点小问题,就是当去掉方法的第一个参数self后,直接调用方法(不使用实例对象调用,直接Find(4,array)),然后报错:missing 1 required positional argument: 'self'
由于之前对这一块没有过深地研究,只知道self是默认的参数,传参是不用管它,之前最多用在__init__方法中,现在稍微研究一下,看看这里边有什么奥秘,上代码:
# # -*- coding:utf-8 -*-
class Test:
def instance(self):
return "这是实例方法"
@classmethod
def classM(cls):
return "这是类方法"
@staticmethod
def static():
return "这是一个和类无关的方法"
t=Test() #实例化对象
print(t.instance())
print(t.classM())
print(t.static())
如上所示,