python嵌套for循环迭代

时间:2018-04-05 20:21:29

标签: python for-loop

我希望内部for循环给我一个值,然后继续进行每个外循环的下一次迭代。感谢你的回应。

目前的结果是:

  • Personal NameJohn
  • Personal NamePeter
  • 个人姓名123456
  • ID #John
  • ID #Peter
  • ID#123456
  • Emergency contactJohn
  • Emergency contactPeter
  • 紧急联络123456

结果应该是:

  • ID#123456
  • Personal NameJohn
  • Emergency contactPeter

    employees={'ID #','Personal Name','Emergency contact'}
    
    excel={'123456',
       'John',
       'Peter'}
    
    for key in employees:
        for value in excel:
           print(key + value) 
    

3 个答案:

答案 0 :(得分:5)

使用zip同时迭代两个对象。

注意:您在这里使用集合(使用{"set", "values"}创建)。集合没有顺序,因此您应该使用列表(使用["list", "values"]创建)。

for key, value in zip(employees, excel):
    print(key, value)

答案 1 :(得分:2)

更改输入数据的类型后,您可以使用zip。设置其原始内容的顺序,从而产生不正确的配对:

employees=['ID #','Personal Name','Emergency contact']
excel=['123456', 'John','Peter']
new_data = [a+b for a, b in zip(employees, excel)]

输出:

['ID #123456', 'Personal NameJohn', 'Emergency contactPeter']

答案 2 :(得分:0)

首先,使用方括号[]代替大括号{}。然后你可以使用zip()(参见其他答案)或使用非常基本的东西:

for i in range(len(employees)):
    print(employees[i], excel[i])