我是 Python 新手,正在尝试编写一个代码,通过从列表 [characters] [traits] [themes] [locations] 和 [lines] 中选择一个随机条目来生成故事的核心元素。我写的代码如下。
我有两个问题:
1)目前代码将允许我在每个列表中创建新条目,但是当我关闭 Python 并重新启动程序时,我创建的条目消失了。我怎样才能使新条目永久存储在列表中?我需要某种数据库吗?
2) 6. Storybox 的代码——我想让程序做的主要事情!- 不管用。关于如何让 Python 从每个列表中打印随机选择的条目的任何建议?
在此先感谢您的帮助。
#Storybox program
#Generates a random selection of my story ideas
characters = []
traits = []
locations = []
themes = []
lines = []
choice = None
while choice != "0":
print(
"""
Storybox:
0 - Exit
1 - Add character
2 - Add trait
3 - Add location
4 - Add theme
5 - Add line
6 - Generate Story
7 - View all entries
"""
)
choice = input("Choice: ")
print()
#exit
if choice == "0":
print("Goodbye")
#add a character
elif choice == "1":
character = input("Enter character: ")
characters.append(character)
#add a trait
elif choice == "2":
trait = input("Enter character trait: ")
traits.append(trait)
#add a location
elif choice == "3":
location = input("Enter location: ")
locations.append(location)
#add a theme
elif choice == "4":
theme = input("Enter theme: ")
themes.append(theme)
#add good lines
elif choice == "5":
line = input("Enter good line: ")
lines.append(line)
#Generate storybox
elif choice == "6":
print("Your storybox is....")
storyboxcharacter = random.choice(characters)
print(storyboxcharacter)
storyboxtrait = random.choice(traits)
print(storyboxtrait)
storyboxtheme = random.choice(themes)
print(storyboxtheme)
storyboxlocation = random.choice(locations)
print(storyboxlocation)
storyboxline = random.choice(lines)
print(storyboxline)
#Display all entries so far
elif choice == "7":
print("Characters:")
for character in characters:
print(character)
print("Traits:")
for trait in traits:
print(trait)
print("Themes:")
for theme in themes:
print(theme)
print("Locations:")
for location in locations:
print(location)
print("Good lines:")
for line in lines:
print(line)
input("\n\nPress the enter key to exit.")