如何将namedtuple键作为变量传递

问题描述

我想调用不同的 namedtuple 值,其中我的 namedtuple 键是从变量传递的。 在这里,我试图获取 namedtuple qa 的值,其中密钥 qa 将从变量环境中获取

from collections import namedtuple
Credentials = namedtuple('Credentials',['name','password','ver'])
environment = "qa"
qa = Credentials('a','1','') 
qa_dev = Credentials('a','2','d') 
live = Credentials('b','c','') 
print ("The name using index is : ",end ="") 
print (live[0]) 
print ("The Student name using keyname is : ",end ="") 
print (qa.name)
**# Now I want to get the values by passing the environment variable as namedtuple key** 
print ((environment).name) 
print ((environment)[1])# this one prints the variable value char of the index

我完全是 Python 新手,所以我的问题可能不是一个好问题。

解决方法

您可以使用 eval 函数来评估环境变量中的 qa:

在定义 qa 后使用以下代码:

environment = eval(environment)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...