首页 > 解决方案 > 将 itertools 组合输出分配给 numpy 数组

问题描述

我正在尝试将 itertools 组合函数的输出分配给一个 numpy 数组,它正在创建一个空白数组。为什么这段代码不能正常工作?

    import numpy as np
    from itertools import combinations

    A=[10,5,7,90,4,200,64]
    B=combinations(A,5)
    NA=np.zeros([5,21],dtype=np.uint8)

    print (list(B))

    NA=list(B)
    print (NA)        

标签: pythonnumpy

解决方案


当你耗尽它时保存发电机 B 的输出以便以后使用它:

A=[10,5,7,90,4,200,64]
B=combinations(A,5)
#this is line is not really required unless you use it in between your lines here
NA=np.zeros([5,21],dtype=np.uint8)

B=list(B)
print(B)

NA=np.array(B)
print (NA)

推荐阅读