2016-09-26 43 views
0

我想将str + int与已经定义的现有变量相等。我想这是如何可以做到寻找和我只发现了如何连接一个海峡,并与问:我如何将str + int连接到=现有变量

print "var%d" % currentIndex 

一起诠释我有什么是CURRENTINDEX是在PyQt4的组合框中选择的索引号。我将组合框选择的索引号与一个包含var0 - var30的大文件相关联。每当currentIndex发生变化时,我都会根据需求提供一系列信息。

var0 = [ "a", "b", "c", "d" ] 
(user picks a selection from GUI comboBox) 
print "var%d" % currentIndex 
var0 

这不是打印列表,它只是将var0作为字符串打印出来。我如何让两个等于var0的变量,而不是var0的str?

+0

你是不是想*计算的名称*你想打印的变量,然后打印?也就是说,如果'currentIndex' = 0,你想打印'var0'的内容? –

+0

您可以使用函数eval()https://docs.python.org/2/library/functions.html#eval – GpG

+0

print eval(“var0”) – GpG

回答

0

您可以打印的清单是这样的:

print eval("var%d" % currentIndex) 

但我会建议你使用嵌套列表,而不是30个变量:

var = [["a", "b", "c", "d"], ["e", "f"], ...] 
print var[currentIndex] 
+0

这是完美的!我打算选择第二个选项,然后看起来更清晰,线条更少。我将如何去从一个嵌套列表中拉出一个特定的项目?我用普通列表做的那种方式是 L = ['a','b','c','d','e','f'] print [L [index] for index in [1,3,5]] –

+0

只需添加另一个索引,如'var [i] [j]'。例如。对于上面的例子,var [1] [0]'会导致''e“'。 – Philipp

+0

谢谢达奇! –

相关问题