我目前正在使用Python处理某些代码,并且具有以下枚举:
#Enumeration - matter type
matterType = ['matter', 'antimatter']
enumMatterType = enumerate(matterType)
#Enumeration - flavor
flavor = ['electron', 'mu', 'tau']
enumFlavor = enumerate(flavor)
我还创建了一个2D数组:
alpha = [[alpha_electron, alpha_anti_electron],
[alpha_mu, alpha_anti_mu],
[alpha_tau, alpha_anti_tau]]
应该是我先前定义的常量数组。我在方程式中使用这些常量,但我将它们引用为alpha[0][0]
或alpha[0][1]
等。我觉得当有人看着我的代码时,如果我有一些知识,他们会更好地理解例如alpha[matter][electron]
或alpha[antimatter][electron]
。有什么办法可以使用像以前那样的枚举从数组中定义我的变量?一般如何在数组中使用枚举?如何使用枚举写入我的Alpha值?请让我知道这是否有任何意义-我很乐意澄清。
答案 0 :(得分:0)
您应该考虑带有元组键的字典:
matterType = ['matter', 'antimatter']
flavor = ['electron', 'mu', 'tau']
alpha = [['alpha_electron', 'alpha_anti_electron'],
['alpha_mu', 'alpha_anti_mu'],
['alpha_tau', 'alpha_anti_tau']]
ref_dict = {}
for x, pair_item in enumerate(flavor):
for y, item in enumerate(matterType):
ref_dict[(item, pair_item)] = alpha[x][y]
现在让我说我要“物质”和“亩”:
In[60]: ref_dict[('matter', 'mu')]
Out[60]: 'alpha_mu'
答案 1 :(得分:0)