Python 访问随机选择列表的名称

Python 访问随机选择列表的名称,python,Python,我有以下清单: availableMaterials = [Si3N4_nk, Y2O3_nk, Al2O3_nk, TiO2_nk, SiO2_nk] 其中每个元素本身就是一个列表。在函数中,我随机选择一个元素并返回它: material1_nk = random.choice(availableMaterials) return material1_nk 然后,material1\u nk将成为一个列表。在调用此函数的地方,我想知道通过访问名称(Si3N4、Y2O3等)选择了哪个元素。

我有以下清单:

availableMaterials = [Si3N4_nk, Y2O3_nk, Al2O3_nk, TiO2_nk, SiO2_nk]
其中每个元素本身就是一个列表。在函数中,我随机选择一个元素并返回它:

material1_nk = random.choice(availableMaterials)
return material1_nk
然后,material1\u nk将成为一个列表。在调用此函数的地方,我想知道通过访问名称(Si3N4、Y2O3等)选择了哪个元素。
什么是执行此操作的有效方法?

一旦将这些列表放入列表列表中,它们的原始变量名将不再与之关联。也许你应该改用字典

availableMaterials = {"Si3N4": Si3N4_nk, "Y2O3": Y2O3_nk, "Al2O3": Al2O3_nk, 
                      "TiO2": TiO2_nk, "SiO2": SiO2_nk]
material = random.choice(availableMaterials.keys())
print "Selected Material:", material
print "List Contents:", availableMaterials[material]

一旦将这些列表放入列表列表中,它们的原始变量名就不能再与之关联。也许你应该用字典来代替。我不完全理解你的问题。你确定你没有混淆列表和字典吗?你想要一个获取Si3N4并返回Si3N4的函数吗?