Python is dynamically typed, and implies polymorphism. Similar to Java, all variables in python are oftype Object.[size=14.3999996185303px]Objects are also reference counted and garbage collected. [size=14.3999996185303px]In python, types live with objects, not names.
Concretely, 1. Variables are entries in a system table, with space for links to objects.
2. Objects are pieces of allocated memory with enough space to represent the values for which they stand for
3. References are automatically followed pointers from variables to objects.
A simple statement
a =3
implies three steps:
1. create an object to repsent the value 3
2. create the variable a, if it does not yet exist
3. link the variable a to the new object 3