第1次作业-Numpy练习

1.创建一个边界值为1而内部都是0的数组,图例如下:
[提示:]解此题可以先把所有值都设置为1,这是大正方形;其次,把边界除外小正方形全部设置为0。
本题用到numpy的切片原理。多维数组同样遵循x[start:stop:step]的原理。

import numpy as np
a=np.ones((10,10),int)
a[1:9,1:9]=0  //第1+1(数组下标1)行到到第10-1(数组下标9-1)行到第1+1(数组下标1)列到到第10-1(数组下标9-1)列

 

 2.在数组主对角线上创建一个值为1,2,3,4的5x5矩阵,图例如下:

import numpy as np
a=np.zeros((4,4),int)
a[0,0]=1
a[1,1]=2
a[2,2]=3
a[3,3]=4

 

 

3.数组归一化操作
生成一个随机的5*5矩阵,找出最大值和最小值,然后把最大值和最小值分别用1和0表示,其他值则介于在0和1中间。

 

a=np.random.rand(5,5)//生成数组
b=a.argmin()         //取得数组中最小值的位置 但位置不是坐标
c= b//5            //
d = b%5            //通过求余和除法运算得出在数组中的坐标
a[c:(c+1),d:(d+1)]=0  //  定位置0
b=a.argmax()
c= b//5
d = b%5
a[c:(c+1),d:(d+1)]=1

 

 

posted on 2019-09-24 14:14  笑天征  阅读(122)  评论(0)    收藏  举报