在Python中组合For循环

2024-09-28 03:14:14 发布

您现在位置:Python中文网/ 问答频道 /正文

假设message=1,联系文件中的A,我想打印

1 A
2 B
3 C
4 D

for message in peoplename:
    for contact in contacts_list:
        time.sleep(10)
        print (message, contact)

但它是这样印刷的

1 A
1 B
1 C
1 D
2 A
2 B
2 C
2 D
3 A
3 B
3 C
3 D
4 A
4 B
4 C
4 D

请告诉我怎么修


Tags: 文件inmessagefortimecontactsleeplist
3条回答

您可以迭代列表的长度

length = len(peoplename)
if legnth != len(contacts_list):
    raise ValueError("Lists have different lengths")

for i in range(length):
    time.sleep(10)
    print (peoplename[i], contact_list[i])

使用zip尝试以下操作:

message = [1,2,3,4]
people = ['A','B','C','D']
for x,y in zip(message,people):
  print(x,y)
#Prints
1 A
2 B
3 C
4 D

你可以运行Live

似乎要将peoplename中的第一项与contacts_list中的第一项相匹配,将第二项与第二项相匹配,等等。使用函数^{}

for message, contact in zip(peoplename, contacts_list):
    time.sleep(10)
    print (message, contact)

相关问题 更多 >

    热门问题