Duck typing in Python verwijst naar het concept waarbij de types of classes van een object minder belangrijk zijn dan de methoden of attributen die het object heeft. Met andere woorden, een object is gekwalificeerd door wat het kan doen (de methoden die het ondersteunt of de operaties die het kan uitvoeren), niet door wat het is (de klasse waartoe het behoort).
De term “duck typing” komt van het gezegde: “Als het kwaakt als een eend en het wandelt als een eend, dan is het waarschijnlijk een eend.”
Dit betekent dat als een object de juiste methoden en attributen heeft, je het kunt gebruiken alsof het een ander type object is dat dezelfde methoden en attributen heeft. Dit is een fundamenteel aspect van het polymorfisme in Python.