如何在Python中将多个列表存储到文本文件中,然后随机选择一个?

2024-05-19 00:45:01 发布

您现在位置:Python中文网/ 问答频道 /正文

对于一个项目,我有几个歌曲和艺术家的列表,我需要在做其他事情之前将这些列表存储到一个文本文件中。 这是我的密码:

BTS = ["Idol", "BTS"]
SWIFTY = ["Love Story", "Taylor Swift"]
RUTH = ["Lost Boy", "RuthB"]
ED = ["Perfect", "Ed Sheeran"]
ARIANA = ["No Tears Left To Cry", "Ariana Grande"]
DRAKE = ["In My Feeling", "Drake"]
RICKY = ["La Vida Loca", "Ricky Martin"]
IU = ["BBIBBI", "IU"]
MJACKSON = ["Thriller", "Michael Jackson"]
PSY = ["Gangnam Style", "PSY"]

如何将所有这些内容存储到一个文本文件中? 那么我如何随机选择这些列表中的一个,并且只输出歌曲或艺术家,而不是两者,因为用户猜测另一个,例如Thriller被输出,用户输入Michael Jackson


Tags: 项目用户密码列表歌曲事情bts艺术家
1条回答
网友
1楼 · 发布于 2024-05-19 00:45:01

我更喜欢使用python dictionary存储数据,然后将其另存为json format。然后你可以简单地读回它如下:

import json
import random


songs = dict((
         ["Idol", "BTS"],
         ["Love Story", "Taylor Swift"],
         ["Lost Boy", "RuthB"],
         ["Perfect", "Ed Sheeran"],
         ["No Tears Left To Cry", "Ariana Grande"],
         ["In My Feeling", "Drake"],
         ["La Vida Loca", "Ricky Martin"],
         ["BBIBBI", "IU"],       
         ["Thriller", "Michael Jackson"],
         ["Gangnam Style", "PSY"] 
         ))


songs = json.dumps(songs)
f = open("dict.json","w")
f.write(songs)
f.close()

f = open("dict.json","r")
songs = f.read()
f.close()

songs = json.loads(songs)

choice = random.choice(list(songs.keys()))
print(choice)
print(songs[choice])

输出:

La Vida Loca
Ricky Martin

相关问题 更多 >

    热门问题