在字典中创建一个随机值,同时在列表上循环,并追加。

我需要创建一个如下格式的字典结构。

list_1 = [1,2,3,4,5]

list_2 = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

list_3 = random.sample(list_2 , random.randint(0,len(list_2))

以len(list_1)为例进行循环,需要使用list_2进行循环,然后使用list_3创建的随机样本,将list_3的每个值都赋值到下面的内部字典中,同时进行迭代。

*需要的字典格式。

my_dict = { 1: { 1: a, 
                 2:b, 
                 3,c},
             2: { 1: 'd',
                  2: 'g'},
             3: {1, 'e',
                 2, 'f',
                 3, 'g'}
                .....
               }*

我的代码:

list_1 = [1,2,3,4,5]

list_2 = ['a', 'b', 'c', 'd', 'e', 'f', 'g']

list_4= []

j= 1

while i <= len(list_1):

    list_3 = random.sample(list_2 , random.randint(0,len(list_2))

    for k in list_3:

        my_dict= { i: { j: k, 
                      }
                 }

        j+=1

    i+=1

    list_3 = random.sample(list_2 , random.randint(0,len(list_2))
    list_4.append(my_dict)

第j个值应该在list_3的每一次迭代后递增,并不断添加新的第j个键+值(k)在list_3的循环结束后,应该创建另一个样本列表(list_3),并在新的第i个键中重复上述步骤,并添加到字典中。

我没有得到所需的结果,需要帮助,如果有人能解决这个代码。

谢谢你!我需要创建一个字典结构。

解决方案:

你正在覆盖你的 my_dict 循环的每次迭代中。您只需要在每次循环中添加一个新的子ict,其键为 i:

list_1 = [1,2,3,4,5]
list_2 = ['a', 'b', 'c', 'd', 'e', 'f', 'g']
my_dict = {}
for i in list_1:
    list_3 = random.sample(list_2 , random.randint(0,len(list_2)))
    my_dict[i] = dict(enumerate(list_3, 1))

给TA打赏
共{{data.count}}人
人已打赏
未分类

不能绑定到'matMenuTrigger',因为它不是'a'的已知属性。

2022-9-8 17:47:36

未分类

如何在数组中对一个持续更新的(动态)对象进行排序 接口比较器

2022-9-8 17:47:38

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索