for循环里生成多个包含循环变量的列表,列表名包含循环变量

问题描述

想要生成若干个列表,列表名包含循环变量,且列表内容也包含循环变量。例如:

list_1 = [1]
list_2 = [1,2]
list_3 = [1,2,3]
...
list_i = [1,2,3,...,i]

解决方案:

代码如下:

names = locals()
for i in range(0, 10):
    names[f'list_{
      
      i}'] = []
    for j in range(0,10):
        if i >=j:
           names[f'list_{
      
      i}'].append(f'{
      
      j}')
    print(f'list_{
      
      i}')
    print(names[f'list_{
      
      i}'])

结果如下:
在这里插入图片描述
实战:

w_local = copy.deepcopy(weight_local[0])
names = locals()
for j in range(0, args.nBlocks - 1):
    names[f'param_index_{
      
      j}'] = [k for k in w_local.keys() if k.split('.')[1] == f'{
      
      j}']
    print(names[f'param_index_{
      
      j}'])

结果如下:
在这里插入图片描述
完美!

猜你喜欢

转载自blog.csdn.net/qq_38703529/article/details/124057813
今日推荐