2015-09-22 93 views
0

我是新来的python,我想制作一个程序。我需要将字符串转换为接受其他字符串的变量。字符串到包含字符串的变量 - Python

exec('%s = %d' % ("newVar", 87)) 

这适用于整数,但有任何格式字符串像这样的字符串?还是有不同的方法?

在此先感谢!

+0

可能的重复[如何在Python中执行变量变量?](http://stackoverflow.com/questions/1373164/how-do-i-do-variable-variables-in-python) – jonrsharpe

回答

2

使用字典。

d = {} 
d["newVar"] = 87 
d["foo"] = "Hello world!" 
print(d["foo"]) 
1

我想你实际上是寻找的是%r符,将两个整数和字符串工作:

​​

这使用repr esentation的参数,而不是它的s特林或d ecimal版本:

>>> '%s = %r' % ('var1', 2) 
'var1 = 2' 
>>> '%s = %r' % ('var2', 'foo') 
"var2 = 'foo'" 

你可以阅读更多有关各种符在the documentation

但是,像这样做“变量变量”很少是合适的事情 - 正如在Kevin's answer中指出的,字典是一个更好的方法。