Python“ for循环”具有2个列表/变量

时间:2019-11-10 14:44:04

标签: python python-3.x list

我有以下代码:

def odraw(oposlist, osizelist):
    for opos in oposlist and osize in osizelist:
        pygame.draw.rect(screen, black, (opos[0], opos[1], osize[0], osize[1]))

如何改写第二行?现在,它的编写方式显然与Python语法不匹配。

2 个答案:

答案 0 :(得分:3)

如果要查找成对迭代,请使用zip

ng add @angular/material

但是,如果要使用笛卡尔积(将for opos, osize in zip(oposlist, osizelist): 中的每个元素与oposlist中的每个元素配对),请使用itertools.product ...

osizelist

...或者只是嵌套循环:

from itertools import product
# ...
for opos, osize in product(oposlist, osizelist):

答案 1 :(得分:2)

您可以这样做:

for i in range(len(oposlist)):
    # Refer oposlist and osizelist like
    oposlist[i]
    osizelist[i]

TBH,其他答案更好:-)