我怎样才能做一个双循环并将它保存在字典中?

How can i do a double for loop and save it in a dictionary?

嗨,我正在尝试做一个双循环并将其保存在字典中。我使用的代码是:

Results = 5, 10, 15, 20, 25
Multiples = ['Multiples1','Multiples2','Multiples3','Multiples4','Multiples5']

Example = {}
for Multiple in Multiples:
    for i in range(0,len(Results)):
        Example[Multiple] = Results[i]

我希望在“示例”中每个倍数都带有相应的数字,如下所示:

{'Multiples1':5, 
'Multiples2':10, 
'Multiples3':15,
'Multiples4':20,
'Multiples5':25} 

但是我从这段代码中得到的结果是:

{'Multiples1': 25,
 'Multiples2': 25,
 'Multiples3': 25,
 'Multiples4': 25,
 'Multiples5': 25}

只需使用一个 for 循环。在内部循环的每次迭代中,您都会覆盖 Example[Multiple] 的值。所以由于 Results 的最后一个值是 25,所以你所有的值最终都是 25。 试试这个:

for i in range(0, len(Results)):
    Example[Multiples[i]] = Results[i]

您可以使用单个 for 循环:

for i in range(len(Results)):
    Example[Multiples[i]] = Results[i]

因为你的预期输出是这样的...

{
    'Multiples1':5, 
    'Multiples2':10,
    ...
}

...您可以尝试不涉及 Multiples 可迭代的解决方案:

for i in range(len(Results)):
    Example[f"Multiple{i}"] = Results[i]

你应该知道在 Python 中如何分配可迭代对象:

Results = 5, 10, 15, 20, 25 #This won't work
Results = [5, 10, 15, 20, 25] #This will work, and is a list
Results = {5, 10, 15, 20, 25} #This will work, and is a set
Results = (5, 10, 15, 20, 25) #This will work, and is a tuple