Python does not support polymorphism or use polymorphism. The concept of polymorphism is applied to strongly typed languages such as java and C#, while Python advocates duck typing (Duck Typing)
Duck typing: is a style of dynamic typing. The valid semantics of an object are not determined by inheriting from a specific class or implementing a specific interface, but by the current set of methods and properties. The name of the concept comes from the duck test proposed by James Whitcomb Riley, which can be expressed like this: "When you see a bird that walks like a duck, swims like a duck, and quacks like a duck, then the bird It can be called a duck."
In duck typing, the concern is not the object type itself, but how it is used. We can write a function that takes an object of type duck and calls its walk and call methods. In a duck-typed language, such a function could take an object of any type and call its go and call methods. If the methods that need to be called do not exist, a runtime error will be raised.