Python 使用枚举遍历多个列表?

Python 使用枚举遍历多个列表?,python,python-3.x,itertools,Python,Python 3.x,Itertools,目前,我正在将列表中的每个人分配到一个月的特定一周。整个一年都是这样 import itertools import datetime today = datetime.date.today() today_str = str(today) year,month,date = today_str.split('-') # convert week of the year to a number current_week = (datetime.date(int(year), int(month

目前,我正在将列表中的每个人分配到一个月的特定一周。整个一年都是这样

import itertools
import datetime

today = datetime.date.today()
today_str = str(today)
year,month,date = today_str.split('-')
# convert week of the year to a number
current_week = (datetime.date(int(year), int(month), int(date)).isocalendar()[1])

name_list1 = ["Kacey", "Cindy", "John"]

for num, item in enumerate(itertools.cycle(name_list1), 7):
    if num >= current_week:
        print(item)
        break
上面将找到第7周跌倒的人。。。。凯西

1. Kacey
2. Cindy
3. John
4. Kacey
5. Cindy
6. John
7. Kacey
我如何使用两个姓名列表来实现这一点?那么列表1中的每个名字将被分配一周,列表2中的每个名字将被分配一周?他们彼此完全独立。如果可能的话,我想在一个for循环中完成这项工作

name_list1 = ["Kacey", "Cindy", "John"]
name_list2 = ["Bob", "Julie", "Brian"]
在清单2中,鲍勃将是7岁

我可以为每个列表创建一个for循环,但在处理多个列表时,这会变得非常糟糕。

我能够压缩它:

for num, (item1, item2) in enumerate(itertools.cycle(zip(name_list1, name_list2)), 7):
    if num >= current_week:
        print(item1 + " " + item2)
        break

itertools.cycle(name\u list1+name\u list2)
?我想您正在寻找预期的结果是什么?
for num, (item1, item2) in enumerate(itertools.cycle(zip(name_list1, name_list2)), 7):
    if num >= current_week:
        print(item1 + " " + item2)
        break