Python中的动态变量

时间:2013-03-10 11:52:06

标签: python

如何使用用户名在Python中创建动态变量?例如,有一个用户“John”,所以我将创建一些名为“John”的变量,例如变量john1,john2,john3。

1 个答案:

答案 0 :(得分:3)

很简单,但可能不太理想。我会再次看一下你的设计,并考虑字典是否是更好的前进方式。

但是,既然您提出了问题,就可以使用exec bultin:

var  = 'John1'
value = 42

exec "%s = %d" % (var,value)
exec "print %s" % (var)

print (dir())

给出:

42
['John1', '__builtins__', '__doc__', '__file__', '__name__', '__package__', 'value', 'var']

(Python 2.7.3)

编辑:@BrianOakley的评论有一点意义。使用这样的机制有点像喝酒。当时似乎是一个好主意,暂时解决了你的问题,但你知道你会在早上后悔。从长远来看,它只会导致更多的悲伤,而且你知道你的母亲不会喜欢你这样做。