DEV Community

Claire Lu
Claire Lu

Posted on Edited on

Python Project-Story generator

This is a simple Python Project that creates a story generator. We will randomly fill phrases in the sentence template and generate three stories at a time.

Sentence template is "Scene", "who1" + "action" + "who2".

First step, I want to create four lists.

Alt Text

Second step, in order to randomly select items from the list, I will use built in library random. random.choice()

Alt Text

Third step, I will print out the sentence.

Alt Text

Last, we need to generate 3 stories at a time. Calling the same print statement three more time only gives the same stories three more times, so I am going to use a while loop.

Alt Text

Here is the sample result I got.

import random

stories_times = 0
while stories_times < 3:

    scene = random.choice(["In an abandoned amusement park", "At a human zoo of the aliens", "In a city on Mars", "In a dream",
                       "In a hospital fulled with zombies", " In the magical world of Happy Porter",
                       "In the desert of Planet X", "On the edge of a cliff", " In a magical kingdom"])

    who1 = random.choice(["a talking rabbit that can't lie", "a goblin who wants to be human",
                      "a women who remembers her past life", "a bounty hunter who is also a serial killer",
                      "a time traveler who love eat zombies",
                      "a young witch who accidentally turn herself into a giant pig forever", "an alcoholic detective",
                      "an escaped criminal and a dangerous mental patient", "A snake demon"])

    who2 = random.choice(["a cult leader", "an astronaut who lost his memory ", "a dog who wanted world domination",
                      "a young couple who ran into the path of a psychopath", "baby Yoda",
                      "a bored vampire", " a mad scientist ", "the last chinese emperor", "an evil princess"])

    action = random.choice(["fall in love with", "fights against", "hunt for gold with",
                        "befriend", "revenge the death of", "robbed", " ate ", "forced to kill", "made clothe out of"])

    print(scene + ", " + who1 + " " + action + " " + who2 + ".")

    stories_times = stories_times + 1

else:
    print("The end.")
Enter fullscreen mode Exit fullscreen mode

Here are some final results.

Alt Text

I hope you liked it.

Top comments (2)

Collapse
 
iceorfiresite profile image
Ice or Fire •

Nice but please post the code in text instead of images.

Collapse
 
cxl3 profile image
Claire Lu •

Great idea. I am going to fix this week:) Thank you so much.