Python is a Dynamically typed programming language.
What are the differences between statically typed and dynamically typed languages?
Statically typed language:
1) Statically typed languages perform type-checking at compile time.
2) It will show errors at compile time.
3) Statically typed language declares data type before use.
4) Ex: Scala, Java, C, C++ etc.
Dynamically typed language:
1) Dynamically typed languages perform type-checking at run time.
2) This type of language might not show errors till the program runs.
3) We can save time while writing code but might give errors at runtime.
4) No need to declare the data type of variables.
5) Ex: Python, Ruby etc.
Reference: Python is Dynamically typed language