Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

First steps pure Python: objects, types and variables

Python is a dynamically strongly typed language. It is fundamental to understand the three notions of objects, types and variables.

Objects and types

We will first start with example without variables. The function type returns the type of an object:

type("hello")
str
type(2)
int
type(2.0)
float
type(2 + 2)
int
type(2 + 2.0)
float
type(True)
bool

We see that there are objects ("hello" or 2.0) which live in the memory of the computer. All object have a type (str and float in this case).

Variables and name spaces

Variables are just tags pointing towards objects. New variables can be used when needed, without declaration. In Python, they are commonly called names. Indeed, they are not associated with a type but only with an object (which has a type)... They can be thought as a tag attached to an object, or as an arrow pointing towards an object. We say that a variable is a reference of an object.

myvar = 1
print(myvar, type(myvar))
1 <class 'int'>

With the assignment myvar = 1, the name myvar has been created and assigned to the object 1.

myvar = "hello"
print(myvar, type(myvar))
hello <class 'str'>

With the assignment myvar = "hello", the name myvar has been assigned to the object "hello".

We will soon see that the names (the variables) live in name spaces.