django 如何在python中正确使用两个循环

wkyowqbh  于 2022-12-24  发布在  Go
关注(0)|答案(1)|浏览(177)

嗨伙计们我有麻烦了
这是我的代码:

services = {
    'first':[],
    'second':[]
}

x = [1,2,3,4,5]
for i in services:
    print('loop-one -  ',i)
    for i in x:
        services['first'].append(i)

print(services)

如果你注意到他加了两次,这个代码的输出是{'first': [1, 2, 3, 4, 5, 1, 2, 3, 4, 5], 'second': []}
我的目的是这样的,我想添加一次{'first': [1, 2, 3, 4, 5], 'second': []}
谢谢!

ecfsfe2w

ecfsfe2w1#

这里的问题似乎是在外部循环中迭代services字典。services字典包含两个键-值对,然后迭代第一个键-值对,并将结果附加到“first”列表键-值对中。如果您想要的输出是{'first': [1, 2, 3, 4, 5], 'second': []}?,请问您为什么不这样做呢
一个简单的方法是使用一个for循环,你可以在https://docs.python.org/3/tutorial/datastructures.html找到extend方法的文档:

for service in services:
    services[service].extend(x)

是否要求有2个循环?我只是想知道。
如果是这样,您可以尝试以下语法:

for service in services:
    print('loop-one -  ',service)
    for num in x:
        services[service].append(num)

print(services)

我假设您正在尝试从x array/list写入数据,然后将其追加到第一个和第二个列表中。

相关问题