尚方宝剑之说
我觉得史蒂文是对的..要回答最初的问题,那么,为了设置一个类方法,只需假设第一个参数不会是一个调用实例,然后确保只从类调用该方法。(请注意,这个答案指的是Python3.x。在Python2.x中,您将得到一个TypeError),用于调用类本身上的方法。)例如:class Dog:
count = 0 # this is a class variable
dogs = [] # this is a class variable
def __init__(self, name):
self.name = name #self.name is an instance variable
Dog.count += 1
Dog.dogs.append(name)
def bark(self, n): # this is an instance method
print("{} says: {}".format(self.name, "woof! " * n))
def rollCall(n): #this is implicitly a class method (see comments below)
print("There are {} dogs.".format(D