Reputation: 11
I can not get this function to print, I am supposed to use a function with optional keyword args to make sentences.
I Love Chicago!
Python is great!!!!
I guess Java is okay. I guess Java is okay.
LET'S GO CUBS!!
here is my code which prints nothing
def speak(message, capitalize_message, num_times_repeat_message, num_exclamation_points=1):
speak("I love Chicago", 1, 1, False)
speak("Python is great", 4, 1, False)
speak("I guess Java is okay", 0, 2, False)
speak("LET's GO CUBS", 2, 1, True)
print(speak)
print(speak)
print(speak)
print(speak)
Upvotes: 1
Views: 92
Reputation: 154
I think you are looking for this?:
def speak(message, capitals=True, num_repeats=1, num_exclame=1):
if capitals:
message = message.capitalize() # capitalize if needed
message += '!' * num_exclame # add exclamation marks
return message * num_repeats
then call the function like this:
print(speak('python is great', capitals=True, num_repeats=2, num_exclame=2))
or maybe have speak print it:
def speak(message, capitals=True, num_repeats=1, num_exclame=1):
if capitals:
message = message.capitalize()
message += '!' * num_exclame
print(message * num_repeats)
and simply:
speak('python is great', True, 2, 3)
Upvotes: 1
Reputation: 3346
You are doing nothing in your function , below is the hint how you write functions:
def speak(message, capitalize_message, num_times_repeat_message, num_exclamation_points=1):
print message
#write your logic here based on parameters
#Below lines calls the speak function
speak("I love Chicago", 1, 1, False)
speak("Python is great", 4, 1, False)
speak("I guess Java is okay", 0, 2, False)
speak("LET's GO CUBS", 2, 1, True)
Upvotes: 0