7 Variables
In Principles of Programming, we talked about variables. We said these are essentially boxes that store information of a certain type so the program can refer to it later.
In many programming languages, we need to create a variable by declaring it. This means specifying its type alongside its name.
In Python, things are much more laid back. Variables are dynamic, so we simply assign a value to a name to create the variable, and the type will be automatically set based on the Value we provide. We assign values in Python using the assignment operator =. It basically says “Let this have a value of this”.
This can cause confusion if you’re new to coding. = does not mean ‘equals’.
What will be the variable type of each of these variables after assignment?
Because variables in Python are dynamic, their type will change if we give it a value of a different type :
7.0.1 Dealing with spaces in names
In programming languages, a space indicates a separation between instructions, values etc. So if we want to name something (like a variable) with multiple words then we can’t use spaces. There are two principle conventions for how we deal with this :
You can use whichever you prefer (though ensure you’re consistent) but snake_case is generally preferred for (and recommended by the developers of) Python.
7.0.2 Variable Types - Single Items
Let’s remind ourselves of some of the main types of variable, and see what they look like in Python.
7.0.2.1 Numbers
Integers (int) are whole numbers Floating point numbers (float) are numbers with up to 15 decimal places
7.0.2.2 Text
Strings (str) are sequences of characters denoted using “ or ‘ (Note - Python does not have a separate variable type for characters, they are just strings of length 1)
7.0.2.3 Truth
Booleans (bool) take one of two values to indicate whether they are True or False.
7.0.3 Variables that store Multiple Items
7.0.3.1 Lists
Lists (list) are sequences of items, where the order matters. Duplicates allowed.
7.0.3.2 Sets
Sets (set) are unordered sequences of unique items.
You won’t come across sets too often in Python - so don’t worry about them too much for now!
7.0.3.3 Tuples
Tuples (tuple) are ordered sequences (like a list) but are immutable (once created, they cannot be changed)
You won’t come across tuples too often in Python - so don’t worry about them too much for now!
7.0.3.4 Dictionaries
Dictionaries (dict) are unordered collections of key-value pairs