Method Resolution Order / MRO in Python. Python uses the method resolution order to resolve the diamond inheritance problem. The diamond Inheritance problem occurs with multiple inheritance, where parent classes can have different implementations of a method. When a child class then tries to call the method, we get a conflict. Which parent method should we use? With MRO, python selects the left most parent and if the method can't be called with said parent, it would continue to the next parent to the right. If none of the parents method can be used, it will go up another level. Therefore, MRO is from left to right, bottom to top. While MRO resolves the diamond inheritance problem, it creates another problem with the super function.

Source Code:
https://github.com/ImKennyYip/python-oop

Python Object Oriented Programming Playlist:
https://www.youtube.com/playlist?list=PLnKe36F30Y4Ykmi2jE28BZahMgPAV3Dzv

Python Data Structures and Algorithms Playlist:
https://www.youtube.com/playlist?list=PLnKe36F30Y4bcRomKi02sP9NR27KnBqCK

Python Game Programming Projects Playlist:
https://www.youtube.com/playlist?list=PLnKe36F30Y4bamRi07AOYS1qGDv_2MGMW

Subscribe for more coding tutorials !