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

Toplist

最新的帖子

標籤