我知道有关于计算器关于名单的排列,并列出清单的几个问题,但是,我没有找到我下面的问题一个聪明的解决办法:创建所有可能的载体组合的欧几里得坐标系统
我想创建欧几里德所有可能的矢量基础坐标系:
import numpy as np
euclidean_system = np.array([[1,0,0],
[0,1,0],
[0,0,1]])
现在我想的东西像itertools的排列/产品功能键入:
permutations = *desired_function*(euclidean_system)
然后得到
permutations = [[[1,0,0],[0,1,0],[0,0,1]],
[[0,1,0],[1,0,0],[0,0,1]],
[[0,0,1],[0,1,0],[1,0,0]] # and so on
]
截至目前,这是与和itertools.permutations容易可行的,但是我想还包括其中1或2或3的载体是负的情况下,例如
additional_permutations = [[[1,0,0],[0,1,0],[0,0,1]],
[[-1,0,0],[0,1,0],[0,0,1]],
[[1,0,0],[0,-1,0],[0,0,-1]] # and so on
]
我知道我可以手工输入,但我不知道是否有一个巧妙的解决了这一点。 谢谢!
你可以看看'np.meshgrid'。它确实输出你想要的,但是以不同的格式输出。 –