Created
August 31, 2018 22:58
-
-
Save remon/1fe622bccd992362f862c06fd04bba03 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# A list of replacement words to be passed in to the play game function. | |
parts_of_speech1 = ["PLACE", "PERSON", "PLURALNOUN", "NOUN", "NAME", "VERB", "OCCUPATION", "ADJECTIVE"] | |
# The following are some test strings to pass in to the play_game function. | |
test_string1 = "Hi, my name is NAME and I really like to VERB PLURALNOUN. I'm also a OCCUPATION at PLACE." | |
test_string2 = """PERSON! What is PERSON going to do with all these ADJECTIVE PLURALNOUN? Only a registered | |
OCCUPATION could VERB them.""" | |
test_string3 = "What a ADJECTIVE day! I can VERB the day off from being a OCCUPATION and go VERB at PLACE." | |
# Checks if a word in parts_of_speech is a substring of the word passed in. | |
def word_in_pos(word, parts_of_speech): | |
for pos in parts_of_speech: | |
if pos in word: | |
return pos | |
return None | |
# Plays a full game of mad_libs. A player is prompted to replace words in ml_string, | |
# which appear in parts_of_speech with their own words. | |
def play_game(ml_string, parts_of_speech): | |
replaced = [] | |
ml_string = ml_string.split() | |
for word in ml_string: | |
replacement = word_in_pos(word, parts_of_speech) | |
if replacement != None: | |
user_input = raw_input("Type in a: " + replacement + " ") | |
word = word.replace(replacement, user_input) | |
replaced.append(word) | |
else: | |
replaced.append(word) | |
replaced = " ".join(replaced) | |
return replaced | |
print play_game(test_string1, parts_of_speech1) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment