เรียกใช้เมธอดคลาสของคลาสพื้นฐานใน Python
พิจารณารหัสต่อไปนี้: class Base(object): @classmethod def do(cls, a): print cls, a class Derived(Base): @classmethod def do(cls, a): print 'In derived!' # Base.do(cls, a) -- can't pass `cls` Base.do(a) if __name__ == '__main__': d = Derived() d.do('hello') > $ python play.py > In derived! > <class '__main__.Base'> msg จากDerived.doฉันจะโทรBase.doอย่างไร? โดยปกติฉันจะใช้superหรือแม้แต่ชื่อคลาสฐานโดยตรงหากนี่เป็นเมธอดอ็อบเจ็กต์ปกติ แต่ดูเหมือนว่าฉันไม่สามารถหาวิธีเรียกเมธอดคลาสในคลาสฐานได้ ในตัวอย่างข้างต้นBase.do(a)พิมพ์BaseคลาสแทนDerivedคลาส