如何将这些功能合二为一

时间:2018-12-13 09:20:04

标签: python django

我有一个问题,如何将2 for loop合并为一个,像这样的功能:

for profile in profileContent['profiles']:
    profileName = profile['profileName']
for data_setting in profileContent['datasettings']:
    dataSettingName = data_setting['dataSettingName']

我已经像这样在一个循环中合并了2个for循环,但是还是错误的,有解决这个问题的主意吗?

for profile,data_setting in profileContent['profiles']:
    profileName = profile['profileName']
    dataSettingName = data_setting['dataSettingName']`

2 个答案:

答案 0 :(得分:3)

在循环中zip()之后使用in函数,如下所示:

for profile, data_setting in zip(profileContent['profiles'],profileContent['datasettings']):
    profileName = profile['profileName']
    dataSettingName = data_setting['dataSettingName']

答案 1 :(得分:1)

如果len(profileContent ['profiles'])等于len(profileContent ['datasettings']):

zz = zip(profileContent['profiles'], profileContent['datasettings']) 
ll = [x['profileName'], y['dataSettingName'] for x, y in zz]

其他:

from itertools import product
pp= product(profileContent['profiles'], profileContent['datasettings']) 
ll = [x['profileName'], y['dataSettingName'] for x, y in pp]