10.11随堂作业

import numpy as np
a=list(range(10,15))
b=np.arange(5)
a
b
a*2
b*2
a**3   #没有意义
b**2
a+b
b.shape
b.dtype

结果:a

b

a*2

b*2

b**2

a+b

b.shape

b.dtype

c=np.array([a,b])  #二维数组
c
c.size
c.shape  #前面的表示是一个二维数组,后面表示每个数组里面都有五个数,但两组数个数不一样的时候时不显示

  type(c)
  type(c[0]) #要指定查看多维数组里的每组元素的类型
  c.dtype
  c[1].dtype

 

结果:

e=np.arange(6,dtype=np.int64)
e
e.dtype
e.dtype.type     #数据类型对象
e.dtype.itemsize   #所占字节数
e.dtype.char     #字符码

#数组切片
b[1:4]   #一维
c[1,1:4]   #二维

运行结果

#处理数组形状
m=np.arange(24)
m.shape
m
# n=m.reshape(3,8)   #视图,一维转化为二维数组
# n
# o=m.reshape(3,2,4)    #一维转化为三维数组
# o
# o[1,1,1:4]     #三维数组切片的两种方式
# o[1,1,0:5:3]
m.shape=(2,3,1,4)    #直接改变形状,一维转多维,也可以直接改变数字变成多维改一维,如下所示
m
m.shape=(24,)
m
# m.resize(3,8)   #直接改变形状,(一维转二维)
# m
# m.ravel()    #多维数组可直接转化为一维数组
# n.flatten()   #多维数组转化为一维数组之后重新分配内存空间

运行结果:

#数组遍历
for x in np.nditer(m):
    print(x)

for x in np.nditer(m, order =  'C'):#遍历顺序
    print(x)
    
for x in np.nditer(m, op_flags=['readwrite']): #可修改数组元素
    x[...]=2*x         #倍数
for x in np.nditer(m, order =  'F'):
print(x)
原文地址:https://www.cnblogs.com/Tlzlykc/p/9771522.html