Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 翻转变量及其';s值_Python_Variables - Fatal编程技术网

Python 翻转变量及其';s值

Python 翻转变量及其';s值,python,variables,Python,Variables,我已经做了一些关于如何翻转变量名和变量值的研究,但是我空手而归 我想要什么 让我用一个例子来说明我想要什么。 假设我有一个名为my\u variable的变量,它的值是一个字符串'my\u new\u variable' my_variable = 'my_new_variable' 有没有办法让我把这些翻过来,让它看起来像这样 my_new_variable = 'my_variable' 您可以尝试这样做(在安装python varname之后): 口述是做到这一点的适当方式。用数据驱动

我已经做了一些关于如何翻转变量名和变量值的研究,但是我空手而归

我想要什么

让我用一个例子来说明我想要什么。 假设我有一个名为
my\u variable
的变量,它的值是一个字符串
'my\u new\u variable'

my_variable = 'my_new_variable'
有没有办法让我把这些翻过来,让它看起来像这样

my_new_variable = 'my_variable'
您可以尝试这样做(在安装
python varname
之后):


口述是做到这一点的适当方式。用数据驱动内部符号名是程序设计不佳的一个明显标志。请使用dict,并参阅。外部数据应该驱动数据关系,而不是内部表示。通过这样做,您可以使算法的结构依赖于数据。数据操作应该独立于这些特定值


你能做到;;在这个网站上做一点研究会给你提供参考。不要。如果你想那样做,怎么样

globals()[my\u variable]=“my\u variable”

几乎所有发表评论的人都建议这样做的一种方法是使用字典,然后翻转键和值

variables = {'my_variable':'my_new_variable'}
flipped = {v:k for k,v in variables.items()}
输出

{'my_new_variable': 'my_variable'}

你的字典解决方案似乎是可行的;为什么这还不够呢?事实上,字典是处理这类事情的最佳方式。你真的想调试由
my_variable='variables'
造成的混乱,还是不经意间引用了代码中现有变量的其他东西?我同意你应该研究使用
dict
以外的方法。这太容易了。因为这似乎是一个X-Y问题,真正的问题是什么?@barny是的,我考虑过这个问题。但是我想用另外两种方法来纠正字典。也许我会收到一个不涉及使用的。嗯,这可能是一个解决方案。。。
{'my_new_variable': 'my_variable'}