Variables
Just like the familiar variables $x$ and $y$ in mathematics, we use variables in programming to easily manipulate values. The assignment operator =
assigns values to variables in Python. Choose descriptive variable names and avoid special Python reserved words.
Assign Values to Variables
Assign a value to a variable using the assignment operator =
. For example, assign the integer 2 to the variable x
:
x = 2
The assignment operator does not produce any output and so the cell above does not produce any output in a Jupyter notebook. Use the built-in function print
to display the value assigned to a variable:
print(x)
2
Compute new values using variables and operators:
1 + x + x**2 + x**3
15
Use the built-in function type
to verify the datatype of the value assigned to a variable:
pi = 3.14159
type(pi)
float
Naming Conventions
We can use any set of letters, numbers and underscores to make variable names however a variable name cannot begin with a number. There are many different kinds of naming conventions and we refer to the Style Guide for Python Code (PEP8) for a summary.
In this book we use lower_case_with_underscores
variable names and single lowercase letter variable names such as x
. It is good practice to use descriptive variable names to make your code more readable for other people.
For example, the distance from Vancouver to Halifax along the Trans-Canada Highway is approximately 5799 kilometres. We write the following code to convert this value to miles:
distance_km = 5799
miles_per_km = 0.6214
distance_miles = distance_km * miles_per_km
print(distance_miles)
3603.4986
Names to Avoid
It is good practice to use variable names which describe the value assigned to it. However there are words that we should not use as variable names because these words already have special meaning in Python.
Reserved Words
Summarized below are the reserved words in Python 3. Python will raise an error if you try to assign a value to any of these keywords and so you must avoid these as variable names.
False |
class |
finally |
is |
return |
None |
continue |
for |
lambda |
try |
True |
def |
from |
nonlocal |
while |
and |
del |
global |
not |
with |
as |
elif |
if |
or |
yield |
assert |
else |
import |
pass |
break |
except |
in |
raise |
Built-in Function Names
There are several functions which are included in the standard Python library. Do not use the names of these functions as variable names otherwise the reference to the built-in function will be lost. For example, do not use sum
, min
, max
, list
or sorted
as a variable name. See the full list of builtin functions.
Jupyter Magic: whos
The Jupyer magic command whos lists all variables in the current Jupyter notebook and their types:
x = 2
pi = 3.14159
distance_km = 5799
miles_per_km = 0.6214
distance_miles = distance_km * miles_per_km
whos
Variable Type Data/Info
-----------------------------------
distance_km int 5799
distance_miles float 3603.4986
miles_per_km float 0.6214
pi float 3.14159
x int 2
Exercises
Exercise 1. True or False: Python does not allow assigning a value to variable name which is already a builtin Python function such as sum
, min
, max
.