我有很多很多字符串,所有格式都是这样的:“lot1”,“lot2”,“lot3”......我想要做的是使用函数参数来确定要使用的变量。这是一个伪示例:
def printlot(someInt):
print lot%i % (someInt)
基本上,我想使用多个字符串来形成另一个字符串的名称。这看起来很简单,但我在两年的Python中没有学会如何做到这一点。
答案 0 :(得分:2)
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]
答案 1 :(得分:1)
您可以使用vars
内置函数访问所有可见变量作为字典:
vars()['lot%d' % someInt]
可以使用globals
或locals
访问不同的范围。
但是,请注意,这通常被视为“unpythonic”行为。而不是创建许多类似命名的变量,更多的Pythonic方法是制作列表或字典。