在python中迭代或扫描多个数组

时间:2016-01-27 20:57:35

标签: python loops

假设我在python中有多个数组。例如,

r1 = [a1[0], a2[0], a3[0], a4[0], a5[0], a6[0], a7[0], a8[0], a9[0]]
r2 = [a1[1], a2[1], a3[1], a4[1], a5[1], a6[1], a7[1], a8[1], a9[1]]
r3 = [a1[2], a2[2], a3[2], a4[2], a5[2], a6[2], a7[2], a8[2], a9[2]]
r4 = [a1[3], a2[3], a3[3], a4[3], a5[3], a6[3], a7[3], a8[3], a9[3]]
r5 = [a1[4], a2[4], a3[4], a4[4], a5[4], a6[4], a7[4], a8[4], a9[4]]
r6 = [a1[5], a2[5], a3[5], a4[5], a5[5], a6[5], a7[5], a8[5], a9[5]]
r7 = [a1[6], a2[6], a3[6], a4[6], a5[6], a6[6], a7[6], a8[6], a9[6]]
r8 = [a1[7], a2[7], a3[7], a4[7], a5[7], a6[7], a7[7], a8[7], a9[7]]
r9 = [a1[8], a2[8], a3[8], a4[8], a5[8], a6[8], a7[8], a8[8], a9[8]]

这会产生一个数字网格,但有没有办法扫描所有这些列表?到目前为止,我想出了这个伪代码:

"for x in multiple lists" 
     if any element at any of the r lists of the list ==0
     Do something

3 个答案:

答案 0 :(得分:2)

您可以在内置函数any()中使用嵌套生成器表达式来实现该目标:

if any(item == 0 for sub_list in r_lists for item in sub_lists):
      # do stuff

答案 1 :(得分:0)

你可以迭代:

list_of_lists = [r1, r2, r3, r4, r5, r6, r7, r8, r9]
for row in list_of_lists:
    if any(element == 0 for element in row):
        do_something()

答案 2 :(得分:0)

这看起来像是一个二维数组。不确定,你想做什么,也许这会有所帮助:How to cancel/abort jQuery AJAX request? ??