首页 > 解决方案 > 如果你有几个数组,你怎么能随机选择几个数组中的一个呢?

问题描述

我目前正在做一个与音乐播放列表相关的项目,我需要能够打印特定艺术家和歌曲的第一个字母以供用户猜测,但是艺术家和歌曲必须是随机的。我为每个艺术家和歌曲制作了一个单独的数组,但我不知道如何随机选择其中一个数组供我使用。

这是我的数组代码:

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"]
BTS2 = ["Magic Shop", "BTS"]
PSY = ["Gangnam Style", "PSY"]

如何随机选择这些数组之一?

标签: pythonarraysselectrandom

解决方案


random.choice()可以解决问题。

import random
random.choice((BTS,SWIFTY,RUTH,ED,ARIANA,DRAKE,RICKY,IU,BTS2,PSY))

您应该使用字典,如果曲目数量增加,它将使您的代码更易于维护:

musics = {
'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"],
'BTS2' : ["Magic Shop", "BTS"],
'PSY' : ["Gangnam Style", "PSY"]}

import random
random.choice(list(musics.values()))

推荐阅读