从变量设置变量?

2024-05-29 03:21:01 发布

您现在位置:Python中文网/ 问答频道 /正文

我有很多字符串,格式都是这样的:“lot1”,“lot2”,“lot3”。。。我想做的是使用一个函数参数来确定要使用哪个变量。下面是一个伪例子:

def printlot(someInt):
    print lot%i % (someInt)

基本上,我想使用多个字符串来形成另一个字符串的名称。这看起来很简单,但在我两年的Python训练中我还没有学会怎么做。你知道吗


Tags: 字符串名称def格式函数参数例子print学会
2条回答

可以使用vars内置函数作为字典访问所有可见变量:

vars()['lot%d' % someInt]

可以使用globalslocals访问不同的作用域。你知道吗

然而,请注意,这通常被认为是“非音速”行为。与创建许多类似命名的变量不同,更具python风格的方法是创建一个列表或字典。你知道吗

nneonneo所说的是正确的,但是您确实需要显式地使用dict。也就是说,您要执行以下操作:

lot_data = {'lot1': 10, 'lot2': 20, 'lot3': 30}
i = 2
print lot_data['lot%d' % i]

而不是这样:

lot1 = 10
lot2 = 20
lot3 = 30
i = 2
print vars()['lot%d' % i]

相关问题 更多 >

    热门问题