我正在尝试写一些代码(作为一个更大的脚本的一部分)来开发长度为 n 的numpy数组,我可以用它来以所有可能的方式改变长度为 n 的输入列表的符号,我正在尝试产生长度为 n 的1和-1的所有可能的排列。
如果我使用itertools.permutations
,它将不接受大于2的重复长度,因为不允许重复。如果我使用itertools.combinations_with_replacement
,那么不是所有的排列都产生。我需要“permutations_with_replacement”。我尝试使用itertools.product
,但我不能让它工作。
下面是我到目前为止的代码(n是一个未知数,取决于输入列表的长度)。
import numpy as np
import itertools
ones = [-1, 1]
multiplier = np.array([x for x in itertools.combinations_with_replacement(ones, n)])
1条答案
按热度按时间xxhby3vn1#
也许这就是你想要的?