হীরা সমস্যা দেখা দেয় যখন একটি ক্লাস দুটি ক্লাস থেকে উত্তরাধিকার সূত্রে পায় যা একটি সাধারণ পূর্বপুরুষকে শেয়ার করে, এটি অস্পষ্টতা তৈরি করে: যদি উভয় মধ্যম ক্লাস একটি পদ্ধতি অতিক্রম করে (বা একটি ক্ষেত্র ধরে রাখে), তাহলে নীচের ক্লাস কোন সংস্করণ পায়?
হীরার আকার
A (defines greet())
/ \
B C (each may override greet())
\ /
D ← inherits from B and C: which greet()?
Python-এ (যা বহুবার্তিক উত্তরাধিকার অনুমোদন করে)
:
():
():
():
():
():
(B, C):
(D().greet())
(D.__mro__)
