.Append 中的 Python 变量列表名称

Pow*_*fee 1 python python-2.7

为了引出我知道这是一个坏主意。字典看起来像是一种更简洁的方式来做我需要做的事情,但我正在寻找一个占位符来保存东西,同时我想知道如何正确使用字典来满足我的需要。

与此同时,我有大约一打列表,我正在尝试将列表名称设置为与变量一起使用。

所以通常我会使用:

Listname.Append("Text")
Run Code Online (Sandbox Code Playgroud)

但是在循环的不同迭代中,我希望能够使用从较大字符串拆分的不同列表。

就像是:

x1 = []
x2 = []
x3 = []

for y in 1 to 3:
    "x"+y.append("string")
Run Code Online (Sandbox Code Playgroud)

再说一次,我知道这是一个坏主意,我正在努力了解字典,但这相当于在我这样做的时候用胶带把东西粘在一起。

我想不出让这个工作的方法。它告诉我 .append 不适用于那个(我期望的)。我尝试用 str() 长期转换整个内容,但它当然告诉我你没有附加到字符串。

我知道这可能不是你想要经常做的事情,如果我确实通过 IDE 管理它会因为我做了愚蠢的事情而对我大喊大叫,但首先有可能吗?

ron*_*akg 5

你的问题的任何答案都比字典本身更难理解。无论如何,它来了。

如果您的列表是全局的,则它们存储在内置函数返回的字典中 globals()。因此,您可以从该字典中获取这些列表,然后附加到它们。

所以你可以这样做:

x1 = []
x2 = []
x3 = []

for y in range(1, 4):
    x = globals()['x' + str(y)]
    x.append("string")
Run Code Online (Sandbox Code Playgroud)