首页 > 解决方案 > 将内部列表分配给新变量 - Python

问题描述

我偶然发现了一些与列表有关的问题。我有这样的嵌套列表 [[1, 2, 3], [4, 5, 6],[7, 8, 9]]

该列表可以任意大,内部列表不需要具有相同的长度(大小)。我想要实现的是取出每个内部列表并分配给新变量。这在我们的玩具示例中意味着以下内容。

Var1=[1,2,3]
Var2=[4,5,6]
Var3=[7,8,9]

我可以在每个内部列表的玩具示例中手动索引它,但这不是理想的结果。我需要将每个内部列表存储为单独的变量。此外,我更喜欢功能来为我做这件事。

我需要的是一个函数,它采用嵌套列表并将每个内部列表自动分配给变量。函数的输入应该是嵌套列表,输出应该是分配给变量的每个内部列表。该解决方案应扩展到更大的列表大小。

标签: pythonlist

解决方案


这应该有效:

main_list = [[1, 2, 3], [4, 5, 6],[7, 8, 9]]
for i in range(len(main_list)):
    declare_statement = f'Var{i} = {main_list[i]}'
    exec(declare_statement)

'''
now each value of the main_list is stored in variable different variable with
prefix "Var" and index of that value as postfix 
'''

这意味着print(Var0)会显示[1, 2, 3]print(Var1)会显示[4, 5, 6]等等,但老实说,我没有看到这一点。您可以通过将列表的每个值分配给变量来实现相同的目标print(main_list[0])print(main_list[1])这只是浪费内存,并且也违背了列表和数组的目的。


推荐阅读