Python 使用循环的多列表

Python 使用循环的多列表,python,list,loops,append,Python,List,Loops,Append,我可以使用循环创建多个列表吗?我想要实现的是创建几个列表,例如: lt_1 = [] lt_2 = [] lt_3 = [] ...... 然后分别在每个列表中添加项目。我试着按上面的方式命名每个列表,但是有20个单独命名的列表,看起来不太好。所以我尝试使用for循环,但没有成功。给出的解决方案建议使用字典,但我无法在每个列表中添加项。此外,我实际上还想创建单独的列表(如果可能的话),以便可以处理每个列表中的每个元素 我尝试了以下方法(这显然行不通),但我想做的是将lt_z中的'z'作为循环变

我可以使用循环创建多个列表吗?我想要实现的是创建几个列表,例如:

lt_1 = []
lt_2 = []
lt_3 = []
......
然后分别在每个列表中添加项目。我试着按上面的方式命名每个列表,但是有20个单独命名的列表,看起来不太好。所以我尝试使用for循环,但没有成功。给出的解决方案建议使用字典,但我无法在每个列表中添加项。此外,我实际上还想创建单独的列表(如果可能的话),以便可以处理每个列表中的每个元素

我尝试了以下方法(这显然行不通),但我想做的是将lt_z中的'z'作为循环变量而不是变量名传递(希望这有意义)


另外,我刚刚开始学习python,所以在尝试使用字典解决方案时,我可能错过了一些东西。

大多数python人可能仍然使用
dict

listDict = {}
for i in range(10):
    listDict[f'lt_{i}'] = []
然后,您可以像这样使用单个列表:

>>> print(listDict)
{'lt_0': [], 'lt_1': [], 'lt_2': [], 
 'lt_3': [], 'lt_4': [], 'lt_5': [], 
 'lt_6': [], 'lt_7': [], 'lt_8': [], 
 'lt_9': []}

>>> listDict['lt_2'].append(5)
>>> listDict['lt_2'].append(6)
>>> print(listDict['lt_2'])
[5, 6]
动态创建变量名原则上是可能的,但几乎总是一个非常糟糕的主意

更新


您询问了
f'lt{i}
是如何工作的。这就是所谓的f字符串。它相当于将
lg
与当前值
i
连接起来的
'lt\'+str(i)
。有关如何使用f字符串的更多信息,请参见,例如。

您可以使用列表列表,即嵌套列表,也可以使用值为列表的字典

如果您希望以后根据名称修改值,使用字典和值作为列表将很有帮助,如果名称不重要,并且您只希望根据位置/索引进行修改,则可以使用嵌套列表。 但我认为更好的方法是使用嵌套列表而不是字典,下面是一段代码片段:

result=[]
对于范围(0,20)内的z:
lt_z=[]
结果追加(lt_z)

即使您创建了这些列表,您希望如何使用它们?好的,这有助于在字典中追加内容。但是你能帮我看看你在
listDict[f'lt{i}]
中做了些什么吗。f在这里有什么用?@HoppyHOP请参阅更新
>>> print(listDict)
{'lt_0': [], 'lt_1': [], 'lt_2': [], 
 'lt_3': [], 'lt_4': [], 'lt_5': [], 
 'lt_6': [], 'lt_7': [], 'lt_8': [], 
 'lt_9': []}

>>> listDict['lt_2'].append(5)
>>> listDict['lt_2'].append(6)
>>> print(listDict['lt_2'])
[5, 6]