6.2 Parameters and arguments
Let’s redefine print_the_time with the
parameter delay_in_seconds
.
def print_the_time(delay_in_seconds):
# print the current time after waiting delay_in_seconds
time.sleep(delay_in_seconds)
print(datetime.datetime.now().strftime("%H:%M:%S"))
print_the_time(0.0)
12:47:46
print_the_time(1.0)
12:47:47
In the first call to print_the_time, the argument
0.0
is substituted for the parameter delay_in_seconds
. In the
second call, the argument is 1.0
, which results in Python sleeping for one second
and then computing and printing the time.
Exercise 6.1
Add a type check to ensure that delay_in_seconds
is a
non-negative float
.
Python allows you to define functions with multiple arguments.
def format_text(text, make_uppercase):
if make_uppercase:
print(text.upper())
else:
print(text)
...