A common pattern in assignment statements is an assignment statement that updates a variable - where the new value of the variable depends on the old.
x = x+1
This means “get the current value of x, add one, and then update x with the new value.”
If you try to update a variable that doesn’t exist, you get an error, because Python evaluates the right side before it assigns a value to x:
>>> x = x+1NameError: name 'x' is not defined
Before you can update a variable, you have to initialize it, usually with a simple assignment:
>>> x = 0>>> x = x+1
Updating a variable by adding 1 is called an increment; subtracting 1 is called a decrement.