从单个列表创建嵌套列表

问题描述 投票:0回答:1

假设我有一个这样的列表:

 my_list = ['a_norm', 'a_std', 'a_min', 'a_max', 'a_flag', 'b_norm', 'b_std', 'b_min', 'b_max', 'b_flag', 'c_norm', 'c_std', 'c_min', 'c_max', 'c_flag']

我想解析这个列表并在单独的列表中创建嵌套列表,如下所示。保留以下顺序非常重要:

 a_list = [[1, "a_norm"], [2, "a_std"], [3, "a_min"], [4, "a_max"], [5, "a_flag"]]
 b_list = [[1, "b_norm"], [2, "b_std"], [3, "b_min"], [4, "b_max"], [5, "b_flag"]]
 c_list = [[1, "c_norm"], [2, "c_std"], [3, "c_min"], [4, "c_max"], [5, "c_flag"]]

我尝试了下面的方法,除了令人费解之外,也不起作用(无限循环)。关于如何实现我的最终目标有什么建议吗?

a_list = []
b_list = []
c_list = []
i = 1
j = 1
k = 1
while (i < 6) and (j < 6) and (k < 6):
    for item in my_list:
        if 'a' in item:
            a_list.append(i)
            a_list.append(set)
            i + 1
        elif 'seas' in set:
            b_list.append(j)
            b_list.append(set)
            j + 1
        elif 'ann' in set:
            print(set)
            c_list.append(k)
            c_list.append(set)
            k + 1 
python-3.x indexing nested-lists
1个回答
0
投票

这将完成你想要的解析;然后您可以根据需要分配

parsed_lists
中的项目。

parsed_lists = {'a':[], 'b':[], 'c':[]}
for x in my_list:
    parsed_lists[x[0]].append(x)
© www.soinside.com 2019 - 2024. All rights reserved.