如何在保留变量名称原始值的同时拆分和重构变量名称

How do I split and reconstruct a variable name while holding its original value

提问人:bitShredder 提问时间:12/9/2017 最后编辑:Zero PiraeusbitShredder 更新时间:12/9/2017 访问量:77

问:

是否可以拆分已经分配值的变量,并将它们重新拼凑在一起以保持相同的先前值?

例如:

URLs.QA.Signin = 'https://qa.test.com'
TestEnvironment = 'QA'
CurrentURL = 'URLs.' + TestEnvironment + '.Signin'
print(CurrentURL)

输出为:“URLs.QA.Signin”

但我希望它:

输出为:'https://qa.test.com'

目的是这样我就可以将任何值插入我的“TestEnvironment”变量,从而轻松访问我的任何大量 URL 列表 =P

我对 Python 是绿色的。非常感谢您的时间和努力!=)


根据 evanrelf 的回答,我尝试并喜欢以下代码!

这正是我要找的,我可能把它复杂化了,有什么建议可以清理代码吗?

urls = {}
environment = 'qa'
district = 'pleasanthill'
url = environment + district
urls[url] = 'https://' + environment + '.' + district + '.test.com'
print(urls[url])

输出为:https://qa.pleasanthill.test.com

python-3.x 变量变量

评论

1赞 Ilja Everilä 12/9/2017
如何创建可变数量的变量
0赞 bitShredder 12/9/2017
嗨,llja - 所以我查看了潜在的重复项:“如何创建可变数量的变量”,它很可能是重复项。但对我来说,很难理解那篇帖子。我认为,如果不出意外,对于那些初学者来说,这篇文章会更简单一些。你的想法?=) (感谢您尽职尽责地保持帖子的整洁和干净! =P)

答:

1赞 evanrelf 12/9/2017 #1

我建议你看看 Python 的字典

urls = {}
urls['qa'] = 'https://qa.test.com'

test_environment = 'qa'
print(urls[test_environment])
// => https://qa.test.com

评论

0赞 bitShredder 12/9/2017
非常感谢您的示例和学习词典的参考,在过去的几个小时里,我一直在盯着并测试词典代码!=)
0赞 evanrelf 12/10/2017
别客气!我不知道您是如何组织这些 URL 的,但您可能还想查看嵌套词典(词典中的词典)。这样你就可以说这样的话。stackoverflow.com/a/16333441/1664444urls['qa']['pleasanthill']
0赞 Ian Mckibben 12/9/2017 #2

我相信据我所知,您正在尝试输入一个字符串并取回一个新字符串(url)。我能理解的最简单的答案是使用字典。这方面的一个例子是简单地做

URLS = {'sheep' : 'wool.com', 'cows' : 'beef.com'}

要么这样做,要么使用两个数组并引用一个公共索引,但谁想这样做:p

评论

0赞 bitShredder 12/9/2017
我也喜欢这个想法,这当然让我思考!=) (是的,不开玩笑,引用索引会很快变得混乱,LOL =P)