Python for循环嵌套优化

简单写一下我的思路吧。

不知道楼主知不知道python科学计算中的numpy包。这个包有些很强大的功能。

import numpy as np
np.arange(10) = array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9])

然后numpy中还有一个meshgrid方法。

其中,type(a)/type(b)...为numpy.array

A, B, C = np.meshgrid(a, b, c)

而且meshgrid方法中可以传入多个array参数,返回多个多维数组矩阵,每个矩阵的每一个对应键位可以组合而成楼主想要得样子。

例如,如果传入两个数组:

a = np.arange(10)
b = np.arange(10)
A, B = np.meshgrid(a, b)
A
Out[5]: 
array([[0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],
       [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]])
B
Out[6]: 
array([[0, 0, 0, 0, 0, 0, 0, 0, 0, 0],
       [1, 1, 1, 1, 1, 1, 1, 1, 1, 1],
       [2, 2, 2, 2, 2, 2, 2, 2, 2, 2],
       [3, 3, 3, 3, 3, 3, 3, 3, 3, 3],
       [4, 4, 4, 4, 4, 4, 4, 4, 4, 4],
       [5, 5, 5, 5, 5, 5, 5, 5, 5, 5],
       [6, 6, 6, 6, 6, 6, 6, 6, 6, 6],
       [7, 7, 7, 7, 7, 7, 7, 7, 7, 7],
       [8, 8, 8, 8, 8, 8, 8, 8, 8, 8],
       [9, 9, 9, 9, 9, 9, 9, 9, 9, 9]])

这里水平不够说的不是很详细,提供一个思路,剩下的可以看一下说明文档。

numpy.meshgrid - NumPy v1.13 Manual