Numbers in Python can be of 3 types: int, float and complex.

### Integer numbers

Integer numbers are represented using the int class. You can define an integer using a value literal:

age = 8

You can also define an integer number using the int() constructor:

age = int(8)

To check if a variable is of type int, you can use the type() global function:

type(age) == int #True

### Floating point numbers

Floating point numbers (fractions) are of type float. You can define an integer using a value literal:

fraction = 0.1

Or using the float() constructor:

fraction = float(0.1)

To check if a variable is of type float, you can use the type() global function:

type(fraction) == float #True

### Complex numbers

Complex numbers are of type complex.

You can define them using a value literal:

complexNumber = 2+3j

or using the complex() constructor:

complexNumber = complex(2, 3)

Once you have a complex number, you can get its real and imaginary part:

complexNumber.real #2.0
complexNumber.imag #3.0

Again, to check if a variable is of type complex, you can use the type() global function:

type(complexNumber) == complex #True

### Arithmetic operations on numbers

You can perform arithmetic operations on numbers, using the arithmetic operators: +, -, *, / (division), % (remainder), ** (exponentiation) and // (floor division):

1 + 1 #2
2 - 1 #1
2 * 2 #4
4 / 2 #2
4 % 3 #1
4 ** 2 #16
4 // 2 #2

and you can use the compound assignment operators

• +=
• -=
• *=
• /=
• %=
• ..and so on

to quickly perform operations on variables, too:

age = 8
age += 1

### Built-in Functions

There are 2 built-in functions that help with numbers:

abs() returns the absolute value of a number.

round() given a number, returns its value rounded to the nearest integer:

round(0.12) #0

You can specify a second parameter to set the decimal points precision:

round(0.12, 1) #0.1

Several other math utility functions and constants are provided by the Python standard library:

• the math package provides general math functions and constants
• the cmath package provides utilities to work with complex numbers.
• the decimal package provides utilities to work with decimals and floating point numbers.
• the fractions package provides utilities to work with rational numbers

We’ll explore some of those separately later on.