Python作为一类弱类型语言。习惯了C/C++或者是Java等强类型语言的人在刚刚上手的时候可能会有些不习惯。在数据处理中,我们经常会用到numpy库中的数组,列表与矩阵等参数类型。而这些类型在调用某些方法的时候如果参数类型错误,往往会得不到想要的结果。
注意数组有另外一个array库,array库中数组的使用方法和numpy库中的数组有很大的不同。注意不要混淆。
一. array与矩阵的乘法
输入以下代码:
from numpy import *
a=[[1,3],[1,5]]
b=mat(a)
c=array(a)
print('a is', a)
print('b is', b)
print('c is', c)
代码中定义了a属于list(列表),b调用了numpy中的mat()函数,将list转换为了矩阵。而c调用了numpy中的array()函数,将list转换为了array(数组)。
运行代码,结果如下:
a is [[1, 3], [1, 5]]
b is [[1 3]
[1 5]]
c is [[1 3]
[1 5]]
从输出的结果中无法直接分辨出b和c的差异。在上面的代码后面继续输入,测试numpy.shape()函数的输出结果