简体   繁体   English

根据第三个变量分配另一个变量的变量值

[英]assign variable value of another variable depending third variable

I have 4 variables in my python code which look like this: 我的python代码中有4个变量,如下所示:

dev_login=os.environ['DEV_LOGIN']
dev_password=os.environ['DEV_PASSWORD']
prod_login=os.environ['PROD_LOGIN']
prod_password=os.environ['PROD_PASSWORD']

And I have a function which receives one of two environments as an attribute like: 我有一个函数接收两个环境之一作为属性,如:

somefunction(env)

in somefunction I need to use 2 of the above variables depending the env attribute. somefunction我需要根据env属性使用上述变量中​​的2个。 So if I call somefunction(dev) then the login and password variables in the function should be assigned like this: 因此,如果我调用somefunction(dev)那么函数中的登录和密码变量应该像这样分配:

login=dev_login
password=dev_password

using if isn't the right way for me, as I may have 10+ env s, and don't want to add some code when new environment is added. 使用if对我来说不是正确的方式,因为我可能有10个以上的env ,并且在添加新环境时不想添加一些代码。 Tried this way but it didn't work: 试过这种方式,但它不起作用:

def somefunctions(env):
    login=+env+"_login"
def some_func(input):
    login = '{}_LOGIN'.format(input.upper())
    password = '{}_PASSWORD'.format(input.upper())

    print(login, password)

some_func('env')
some_func('dev')

>> ENV_LOGIN ENV_PASSWORD
>> DEV_LOGIN DEV_PASSWORD

You can then insert the variables as needed: 然后,您可以根据需要插入变量:

dev_login=os.environ[login] # 'DEV_LOGIN'
dev_password=os.environ[password] # 'DEV_PASSWORD'

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM