ใน Python 2.x มีคลาสสองสไตล์ขึ้นอยู่กับว่ามีหรือไม่มีประเภทในตัวเป็นคลาสฐาน -
คลาสสไตล์ 'Old style' หรือ "Classic":ไม่มีประเภทในตัวเป็นคลาสพื้นฐาน -
>>> class OldFoo: # no base class ... pass >>> OldFoo.__bases__ ()
คลาสรูปแบบ "ใหม่":พวกเขามีประเภทในตัวเป็นคลาสพื้นฐาน หมายความว่า ไม่ว่าทางตรงหรือทางอ้อม พวกเขามีวัตถุเป็นคลาสพื้นฐาน -
>>> class NewFoo(object): # directly inherit from object ... pass >>> NewFoo.__bases__ (<type 'object'>,)
อย่างไรก็ตามใน Python 3.x อนุญาตให้ใช้เฉพาะคลาสสไตล์ใหม่ที่มีประเภทในตัวเป็นคลาสฐาน -
ไม่จำเป็นต้องพูดถึงอ็อบเจกต์ในวงเล็บหลังชื่อคลาสที่นี่ในการประกาศคลาส ที่นี่คลาสสืบทอดจากวัตถุโดยปริยาย
>>> class Foo: # directly inherit from object ... pass >>> Foo.__bases__ (<type 'object'>,)