2017-07-15 175 views
0

我目前正在编写我的第一个脚本,并且具有所有类似的功能,除了每个变量名称中的一个数字更改的事实。Python从字符串和其他变量中创建变量名

例如像这样:

def Function1(): 
    global Var1 
    Var1 = A1 
    global Var2 
    Var2 = B1 

def Function2(): 
    global Var1 
    Var1 = A2 
    global Var2 
    Var2 = B2 

变量AX,BX和等等都是从文件中读取。然后,如果我点击一个tkinter-Button,其中一个功能被激活,并且全局变量Var1和Var2被设置为A1和B1或A2和B2等等......

因为这只是复制和粘贴功能,然后手动更改从文件中读取的变量名中的数字,我认为必须有一种方法可以使这更容易。是这样的:

def Function1(): 
    FUNCTIONNUMBER = 1 
    global Var1 
    Var1 = ("A" + FUNCTIONNUMBER) 
    global Var2 
    Var2 = ("B" + FUNCTIONNUMEBR) 

换句话说,这是令它可能建立从一个恒定部分(“A”)的变量名和变化部分(“1”或“2”或“3 “...)

我已经搜索了这个问题,但没有找到任何有助于我的具体案例,因为我不想从无处创建变量或者我不想要将所有变量名称写入字典中。我只是想让python认为它读取了一个由不同部分组成的变量名。

预先感谢您!

+3

只需使用'A'和'B'的列表或字符串,而不是构造变量名称。你可以做,但你不应该。 –

+0

我相信你想描述的是,如果我没有记错的话,就好像它是一个重大的漏洞。 – Max

回答

0

我认为你要找的是一个列表。让我告诉你,例如

some_list = ["hey", "hows", "it", "going"] 
print(some_list[0]) 
print(some_list[2]) 

这个输出是:

hey 
it 

列表就是这样,数字/字符串/功能/其他名单的列表,并通过指定访问它们其中在你想要的列表中的位置(从0开始)