有没有办法将变量传递给列表的choice()
函数。我有一堆列表,我想从一个列表中随机选择,然后使用返回的字符串从具有该字符串名称的列表中进行选择。
A = ['1','2','3']
print choice (A) - this gets me a random choice from the list
但我想将选项存储为变量并使用它来调用另一个列表
A = ['1','2','3']
1 = ['A','B','C']
Var1 = choice (A)
print choice (Var1) *** this is my problem, how do I pass a variable to the choice function
感谢您的帮助!
答案 0 :(得分:13)
在Python中,您可以使用 references 来完成此操作。
A = [1, 2, 3]
B = [4, 5, 6]
C = [7, 8, 9]
MasterList = [A, B, C]
whichList = choice(MasterList)
print choice(whichList)
请注意,A, B, C
是先前分配的变量的名称,而不是带引号的字符串。如果你发现自己使用带引号的名称来引用变量,通常会有更好的方法来做你想做的事情。
答案 1 :(得分:0)
some_list = { 'A': ['1','2','3'],
'B': [some_other_list],
'C': [the_third_list]
}
var1= choice( ['A', 'B', 'C'] ) # better: some_list.keys()
print( choice (some_list[var1])
“如果你发现自己使用引用的名称来引用变量,通常会有更好的方法来做你想做的事情。”
90%的时间,你应该使用字典。另外10%的时间,你需要完全停止你正在做的事情。