If statements can be used to run code conditionally
Before if-statements: Code has pretty much just run in a straight line
With ifs: Can run code optionally, depending on the value of a condition
This means our code can branch in different directions
if condition: statement 1 statement 2 . . . statement N
The condition is an expression that is evaluated to a bool.
Example:
Instead of checking if the name entered is “Bond”, also check whether the name is “James Bond”.
The computer program branches out, or makes decisions
def greater_than_zero(n):
if n > 0:
return "Greater than zero"
else:
return "Not greater than zero"
def main():
result = greater_than_zero(4)
print(result)
result = greater_than_zero(0)
print(result)
result = greater_than_zero(-3)
print(result)
main()
Greater than zero
Not greater than zero
Not greater than zero
Write a Python function called absolute
that takes one numeric argument (integer or float) n
and returns the absolute value of n
: if n
is positive, it results n
, if n
is negative, it returns n * -1
Test cases:
Submit your solution (name your file absolute.py
) to gradescope for attendance
age_milestones
and it takes one integer argument: age
age
is greater or equal to 18
age
is greater or equal to 21
age
is greater or equal to 35
def age_milestones(age):
'''
This function prints an informative message based on,
a person's age.
Args:
age: integer representing a person's age
Returns:
A string with a message to the user
'''
message = ""
if age >= 18:
message += 'You may apply to join the military.'
if age >= 21:
message += ' You may drink.'
if age > 35:
message += ' You may run for president.'
return message
def main():
print( age_milestones(18) ) # You may apply to join the military.
print( age_milestones(30) ) # You may apply to join the military. You may drink.
print( age_milestones(0) ) #
main()
You may apply to join the military.
You may apply to join the military. You may drink.
In addition to having built-in functions (len()
, print()
, int()
, float()
, etc.), Python also has a number of methods we will be using in this class.
Check the documentation for string methods and read what .isnumeric()
does.
input()
function always returns a string
.isnumeric()
to determine if a string represents a numberTry these out:
Write a Python function that does the following:
validate_age
age
True
if age
contains only 0-9 digit characters, and False
otherwiseCall this validation in your previous code for age milestones.
def age_milestones(age):
'''
This function prints an informative message based on,
a person's age.
Args:
age: integer representing a person's age
Returns:
A string with a message to the user
'''
message = ""
if age >= 18:
message += 'You may apply to join the military'
if age >= 21:
message += 'You may drink'
if age > 35:
message += 'You may run for president'
return message
def validate_age(age):
return age.isnumeric()
def main():
'''
This functions takes input from the user and calls the
check_age() functiont to print a message
'''
age = input('How old are you?\n')
if validate_age(age):
age = int(age)
print(age_milestones(age))
else:
print("Invalid age entered")
main()