NumPy 库中提供了大量与多维数组(numpy.ndarray)有关的功能。NumPy 对数据结构(如实现邻接矩阵或加权矩阵)的支持还是很不错的。
我们要实现一个基于 list 的、面向 n 个节点的空加权(或邻接)矩阵时,通常是这样做的:
>>> n = 10
>>> N = [[0]*n for _ in range(n)]
而在 NumPy 中,我们可通过 zeros 函数来做:
>>> import numpy as np
>>> N = np.zeros((n, n), dtype='int32')
# 二维 tuple 表示多维数组的 size
# dtype 表示元素数据类型
list 的拷贝
>> l2 = l1[:]
>> id(l1) == id(l2)
False
多维数组的拷贝
l2 = l1.copy()