import numpy as np
a = np.empty((3,3)) #empty()不赋初值,是最快速的方法,只分配数组所使用的内存,不对数据初始化起作用
print(a) #补充:网上看见过这样一句话:np.empty()用于生成接近于0的随机数数组
#从指定的函数中生成数组,第一参数是函数名称(注意是函数名称),第二个参数是数组形状
def mult(x = 0, y = 0):
return (x+1)*(y+1)
a1 = np.fromfunction(mult,(9,9)) #生成的9行9列矩阵(也就是二位数组)中的行和列分别对应自定义函数中的x,y,是跟函数参数的前后位置是对应的
#a1.shape = 3,-1 #调整数组在每个维度上大小的整数元组,-1是列让系统自己去算,我们只给定了三行,当然也可以自己给定但是得算好了,不能掉了或多了数据,这样会报错的。。。
print(a1)
k= [[1,2], [2,3], [3,4]]
print(k)
a2 = np.array(k) #从输出我们可以发现python中的数组和numpy中的数组的显示情况是不太一样的(没有逗号!)
print(a2)
a3 = np.array(k, dtype = np.float) #定义numpy数组元素的类型,一般定义的有浮点型np.float和整型np.int
print(a3)
#全零矩阵
a4 = np.zeros((5,5))
print(a4)
#全一矩阵
a5 = np.ones((5,5))
print(a5)
#生成一个由x到y,以i为步长的数组
a6 = np.arange(10, 20, 2)
print("numpy里的arange:",a6)
#对比于python中的range函数
a7 = range(10, 20, 2)
print("python里的range:",list(a7))
#修改矩阵的形状
# np.reshape()函数
# 使用例子:a = np.arange(12).reshape(3, 4),不改变原数组,返回一个新的数组
# np.shape()函数
# 这个上边有说过,这个会直接改变原来的数组!
输出: