Intro to Control Flow

As we've seen in class, our algorithms are just a set of rules that instruct the computer to do something. We're commanding the computer on what to do. But these algorithms won't be linear, there will be different "paths" to take. The most common example is the introduction of conditionals. Conditionals, also known as if statements, let us make decisions in our algorithms. Examples:

• If the user's age is less than 16, don't allow the registration.
• If the purchase is greater than \$1000, check for fraud.

The general form of an IF statement in Python is as follows:

``````if [CONDITION]:
# do something
# (Condition True path)
else:
# do something else
# (Condition False path)
``````

In our previous example, the `[CONDITION]` is what will make you decide between one path or the other. If the condition evaluates to `True`, the "True" path is taken. If the condition is NOT True (it's `False`), the "False" path is taken. Note the square brackets around `[CONDITION]` are just placeholders for this example and are not actually used in code.

The condition for your if statements will be formed with a combination of data and boolean operators. For example, these are all valid conditions:

• `user_age > 16`
• `purchase_total > 1000`
• `user_is_active and date_registered < today`

There are many boolean operators, like:

• `>` : Greater than
• `<` : Less than
• `==` : Equals
• `>=` : Greater or equals than
• `<=` : Less or equals than

We also have operators `and` and `or` that "combine" other operations. Finally we have the `not` operator that just inverts the given value provided (like from `True` to `False`).