关于python:使用for循环更改列表的名称

Change the name of the lists with a for loop

我有一些清单:

1
2
3
4
list_line[0] = ['my name is A']
list_line[0] = ['my name is B']
list_line[0] = ['my name is C']
list_line[0] = ['my name is D']

我的工作是:

1
2
3
4
5
6
7
list_words_0 = list_line[0].split()
list_words_1 = list_line[1].split()
list_words_2 = list_line[2].split()
list_words_3 = list_line[3].split()

list_words = list_words_0 + list_words_1 + list_words_2 + list_words_3
print list_words

因此,通过以上步骤,我可以使用for循环来完成它:对于范围(3)中的i:做某事

但我不知道如何把我放入变量中:列出单词"0",列出单词"1",列出单词"2…你能帮我用for循环更改列表的名称吗?非常感谢!


我建议使用字典。您要做的是循环0到i(我是您想要的list_words_变量的最大数量),然后创建一个字符串,该字符串指向"list_words_" + str(i)。然后使用字典跟踪这些:

1
2
#assume you're inside the loop
example_dictionary["list_words_" + str(i)] = list_line[0];

注意:将其视为伪代码。有点晚了,所以我可能会有小的语法错误。

但是,你的问题有点不清楚。可能需要将多个列表或数组组合成一个列表或数组。在这个站点上已经有很多这样的例子(比如这个和这个)。


我假设您的数据是这样的,因为您稍后将尝试执行split

1
2
3
4
list_line = ['my name is A',
 'my name is B',
 'my name is C',
 'my name is D']

您的最终目标(连接所有单词列表)只需执行以下操作即可实现:

1
2
3
output_list = []
for alist in list_line:
    output_list.append(alist.split())

印刷品

1
2
3
4
 [['my', 'name', 'is', 'A'],
 ['my', 'name', 'is', 'B'],
 ['my', 'name', 'is', 'C'],
 ['my', 'name', 'is', 'D']]