Creating a Conditional Loop with Outputs

Creating a Conditional Loop with Outputs

Mad Libs are activities that have a person provide various words, which are then used to complete a short story in unexpected (and hopefully funny) ways.

Write a program that takes a string and integer as input, and outputs a sentence using those items as below. The program repeats until the input string is quit.

Ex: If the input is:

apples 5 shoes 2 quit 0 the output is:

Eating 5 apples a day keeps the doctor away. Eating 2 shoes a day keeps the doctor away. Note: This is a lab from a previous chapter that now requires the use of a loop.

my code:

user_text = input().split()
word = (user_text[0])
number = (user_text[1])

if word != 'quit':
    print('Eating {} {} a day keeps the doctor away.'.format(number, word))
    user_text= input()

outputs: Eating 5 apples a day keeps the doctor away.

1

1 Answer

You are not looping, so your program will only ask for input once, and end. If you want to keep inputting data, and printing new words, you should do the following:

word = ""

while True:
    user_text = input().split()
    word = (user_text[0])
    if word == 'quit':
        break
        
    number = (user_text[1])
    print('Eating {} {} a day keeps the doctor away.'.format(number, word))

As you can see by the code, while the user doesn't input the word quit, the program will ask for a new input, and print a new sentence.

2

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

James H. Sterling
Author

James H. Sterling

James Sterling reports on renewable energy developments, climate policy, ecological conservation, and green tech innovations around the globe.