The world’s Largest Sharp Brain Virtual Experts Marketplace Just a click Away
Levels Tought:
Elementary,Middle School,High School,College,University,PHD
| Teaching Since: | Apr 2017 |
| Last Sign in: | 103 Weeks Ago, 2 Days Ago |
| Questions Answered: | 4870 |
| Tutorials Posted: | 4863 |
MBA IT, Mater in Science and Technology
Devry
Jul-1996 - Jul-2000
Professor
Devry University
Mar-2010 - Oct-2016
Write a function called get_user_input() that takes a list of strings as arguments. When the function is called, it should ask the user to make a selection from the options listed in the given list. Then it should get input from the user. If the user doesn't input one of the given choices, then the program should repeatedly ask the user to pick from the list. Finally, the function should return the word the user selected. Note that this is a function, not a script. Here is a sample of what the result should look like when the function is called:
>>> ================================ RESTART ================================
>>>
>>> x = get_user_input(["yes","no","maybe"])
Please select one of the following:
yes
no
maybe
>perhaps
That wasn't a valid option. Please make a different choice.
>absolutely not
That wasn't a valid option. Please make a different choice.
>yeah
That wasn't a valid option. Please make a different choice.
>maybe
>>> print(x)
maybe
>>> y = get_user_input(["1","2","3","4","5"])
Please select one of the following:
1
2
3
4
5
>0
That wasn't a valid option. Please make a different choice.
>#
That wasn't a valid option. Please make a different choice.
>4
>>> print(y)
4
Note that the commands x = get_user_input(["yes","no","maybe"]) and print(x) are not part of the function I'm asking you to write. They are just extra commands I used to test the function. You should use similar commands when testing your code (but you don't have to include your test code with your submission). This function is one of those unusual functions that both prints things on the screen and returns values. Testing your code like I did in the sample output above will help make sure that you haven't mixed up the parts that are supposed to print and the parts that are supposed to return values.
-----------