Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-apps-script/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
For loop 枚举列表的每个索引中的0,1元素_For Loop_Enumeration_Enumerate - Fatal编程技术网

For loop 枚举列表的每个索引中的0,1元素

For loop 枚举列表的每个索引中的0,1元素,for-loop,enumeration,enumerate,For Loop,Enumeration,Enumerate,我想得到所有可能的枚举结果,每个索引中都有0或1作为值 下面是我的代码和结果。 如何改进代码?我想避免过多的for循环 k=[0,0,0,0,0,0] list_dic={} for a in range(2): k[0]=a for b in range(2): k[1]=b for c in range(2): k[2]=c for d in range(2): k

我想得到所有可能的枚举结果,每个索引中都有0或1作为值

下面是我的代码和结果。 如何改进代码?我想避免过多的
for
循环

k=[0,0,0,0,0,0]
list_dic={}
for a in range(2):
    k[0]=a
    for b in range(2):
        k[1]=b
        for c in range(2):
            k[2]=c
            for d in range(2):
                k[3]=d
                for e in range(2):
                    k[4]=e
                    for f in range(2):
                        k[5]=f
                        list_dic[tuple(k)]=0

enum_list=list((list_dic.keys()))
print(enum_list)

也许您想尝试使用intertools:

import itertools
k = [0,1]

ret = itertools.product(k, repeat = 6)

for i in ret:
    print i
输出:

(0, 0, 0, 0, 0, 0)
(0, 0, 0, 0, 0, 1)
(0, 0, 0, 0, 1, 0)
(...many arrays..)
(1, 1, 1, 1, 0, 1)
(1, 1, 1, 1, 1, 0)
(1, 1, 1, 1, 1, 1)
当repeat=6时,您可以将数组的大值设置为out-in-combination数组存储在k中,在k中您可以输入任何值,然后intertools尝试进行排序和合并