Python basics
Following is a summary of basic Python concepts covered in this class.
Variables
A variable references a value:
x = 5
This means x references the integer 5, or x → 5.
Likewise:
name = 'Emma'
means the variable name references the string 'Emma'. name → 'Emma'.
Types
The following are basic types in Python:
string— e.g.'hello', can use single or double quotesinteger— e.g.5— convert a string to an integer withint()float— e.g.5.2— convert a string to a float withfloat()boolean— must beTrueorFalse
Operators
Operators compute new values from a type.
Arithmetic operators
Arithmetic operators take two numbers and produce a result.
| Operator | Example | Result |
|---|---|---|
| + | 7 + 2 | 9 |
| - | 7 - 2 | 5 |
| * | 7 * 2 | 14 |
| / | 7 / 2 | 3.5 |
| ** | 7 ** 2 | 49 |
| // | 7 // 2 | 3 |
| % | 7 % 2 | 1 |
Comparison operators
Comparison operators take two numbers and produce a boolean result.
| Operator | Example | Result |
|---|---|---|
| > | 2 > 1 | True |
| < | 2 < 1 | False |
| >= | 2 >=2 | True |
| <= | 2 <= 2 | True |
| == | 4 == 4 | True |
| != | 4 != 6 | True |
String operators
Some operators can also apply to strings.
| Operator | Example | Result |
|---|---|---|
| + | “good” + “bye” | “goodbye” |
| * | “ha” * 3 | “hahaha” |
| > | “hello” > “goodbye” | True (alphabetically greater) |
| < | “hello” < “until tomorrow” | True (alphabetically lesser) |
If statements
An if runs a block of code once if the condition is true. For example:
if age < 35:
print("Sorry, you can't run for President.")
You can add else to handle the other case:
if age < 35:
print("Sorry, you can't run for President.")
else:
print("Good luck in your candidancy.")
You can use elif to check multiple conditions:
if age < 25:
print("These are the best years of your life.")
elif age > 65:
print("These are the golden years of your life.")
else:
print("Well, just muddle through, I guess.")
You can use multiple conditions and combine them with or and and:
if age < 5 or height < 3:
print("Sorry, you are not able to ride this roller coaster.")
if not qualified and money > 1000000:
print("You're not qualified for this opportunity, but if you make a big enough donation we'll consider you anyway.")
While loops
A while loop runs a block of code as long as the condition is true. Some
examples:
while bit.can_move_front():
bit.move()
x = 5
while x > 0:
print('hello')
x = x - 1
while True:
age = int(input("What is your age?"))
if age >= 18 and age <= 120:
break
print("That is not a valid age.")
Functions
Functions let you organize your code into smaller pieces. For example, here is a function that tells you if you have guessed the right number:
def check_guess(guess, answer):
if guess == answer:
print("Good job!")
return True
if guess > answer:
print("Lower")
else:
print("Higher")
return False
A function has these parts:
def— a keyword that means you are starting a function definition- function name
- parameters — zero or more parameters, separated by a comma (these are also called arguments)
- colon
- indented block of code to run
- optional return statement, which returns one or more values — if no return
statement the function returns
None
Input
You can get input from the terminal using the input() command:
name = input('Enter your name: ')
If you need to convert to an integer, use int():
age = int(input('Enter your age: '))
Likewise you can use float() to convert to a float.
Output
You can print with the print() statement:
print('Hello')
Formatted strings are particularly useful for output that needs to use a variable:
value = 5
result = f'Your value is: {value}'
print(result)
A formatted string starts with an f and then can use a variable name (and even
operators) inside of curly brackets.
value = 5
result = f'One more than your value is: {value + 1}'
print(result)
Breaking from a loop
You can break out of a loop with break:
while True:
age = int(input("Enter an age for an adult: "))
if age >= 18:
break
print("Try again.")
print(f'The age you entered: {age}')
If a while loop is inside of a function and you want to break out of the loop and return at the same time, you can just use return:
def get_age():
while True:
age = int(input("Enter an age for an adult: "))
if age >= 18:
return age
print("Try again.")
Putting this all together
Here is a complete program that is a guessing game for you and a friend to play:
def get_number():
print("Enter a number between 1 and 100 for your friend to guess.")
while True:
number = int(input("Number: "))
if number >= 1 and number <= 100:
return number
print("Try again.")
def print_blank_lines(number):
while number > 0:
print()
number = number - 1
def get_guess():
return int(input("What is your guess? "))
def check_guess(guess, answer):
if guess == answer:
print("Good job!")
return True
if guess > answer:
print("Lower")
else:
print("Higher")
return False
def main():
answer = get_number()
print_blank_lines(10)
while True:
guess = get_guess()
found = check_guess(guess, answer)
if found:
break
if __name__ == '__main__':
main()