Python数组基本操作

项目一:基础编程
1.创建两个数组完成sqrt,abs,函数的调用,以及两个数组做加法
输出格式如下:
在这里插入图片描述

import numpy as np

from numpy import arange


print()
print('第一题')
a1 = np.array([10, 20, 30, 40])
print(a1)
a2 = np.array([8, -67, -34, 69])
print(a2)
print(np.sqrt(a1))
print(np.abs(a2))
print(a2+a1)

2.创建一个长度为24的一维数组(如图所示),然后让第5个元素等于1,并转换为243的数组,打印新的数组。输出格式如下:
在这里插入图片描述

print('第二题')
array1 = np.array(range(24))
print(array1)
array1[4] = 1
print(array1)
array1.shape = 2, 4, 3
print(array1)

3.创建一个4*4的二维数组,完成以下操作:
(1)使用索引的方式获取第二行第一列和第三行第二列的数据。
输出格式如下:
在这里插入图片描述

(2)使用切片的方式数组的1,2行和第2,3列的数据
输出格式如下:
在这里插入图片描述

(3)输出索引为(2,2)和(1,3)的元素
输出格式如下:
在这里插入图片描述

print('第三题')
array3 = np.arange(0, 16)
array3.shape = 4,4
print(array3)
print('第二行第一列为:',array3[1][0],'\n第三行第二列为', array3[2][1])
print('第一行为:',array3[1,:])
print('第二行为:',array3[2,:])
print('第二列为:',array3[:,1])
print('第三列为:',array3[:,2])
print(array3)
print(array3[2,2],array3[1,3])

4.创建一个一维数组,并修改为5*5的二维数组,完成以下操作(如图所示):
(1)输出一二行元素
(2)输出下标为一三的行
(3)输出下标为(1,3)的元素
输出格式如下:
在这里插入图片描述

print('第四题')
array4 = np.arange(25)
array4.shape = 5,5
print(array4)
print('输出一二行元素:\n',array4[0:2,:])
print('输出下标为一三的行:\n',array4[[1,3],:])
print('输出下标为(1,3)的元素:\n',array4[1,3])

1.创建如下两个数据:
(1)创建存储学生姓名的数组
(2)创建存储学生成绩的数组
(3)使用布尔类型索引输出Rose的成绩
格式如下:
在这里插入图片描述

print('第五题')
student = np.array(['Tom', 'Lily', 'Jack' ,'Rose'])
score = np.array(
    [[79, 88, 80],
 [89 ,90, 92],
 [83 ,78, 85],
 [78 ,76, 80]])

print("Rose的成绩为",score[student == "Rose"])

5.矩阵运算
1)(1)#创建一个33的零矩阵
(2)#创建一个2
4的1矩阵
(3)#产生一个2-8之间的2*5的随机整数矩阵(写出代码即可,无需写出矩阵中元素值)
输出格式如下:
在这里插入图片描述

print('第六题')
print(np.zeros((3,3)))
print(np.ones((2,5)))
array6 = np.random.randint(2,8,10)
array6.shape = 2,5
print(array6)

2).计算矩阵对应行列的最大、最小值、和。创建一个矩阵如图所示,并完成一下操作
(1)计算每一列的和
(2)计算每一行的和
(3)计算第一行所有列的和
(4) 计算矩阵中所有元素的最大值
(5)计算第二列的最大
(6)计算第二行的最大值
(7)计算所有列的最大值
(8)计算所有行的最大值
(9)计算所有列的最大值对应在该列中的索引
(10)计算第二行中最大值对应在该行的索引
输出格式如下:
在这里插入图片描述

print('第七题')
number7 = np.array([[1 ,1],
                    [2 ,3],
                    [4 ,2]])
print(number7)
print("每一列的和",number7.sum(axis=0))
print("每一行的和",number7.sum(axis=1))
temp1 = number7[1]
temp1.shape = 1,2
print("计算第一行所有列的和",np.sum(temp1,axis=0))
print("计算矩阵中所有元素的最大值",number7.max())
print("计算第二列的最大",number7[:,1].max())
print("计算第二行的最大值",number7[1].max())
print("计算每一行的最大值",np.max(number7,axis=1))
print("计算每一列的最大值",np.max(number7,axis=0))
print("每一列的最大值对应该列中的索引",np.argmax(number7,axis=0))
print("每一行的最大值对应该列中的索引",np.argmax(number7[1]))
  • 7
    点赞
  • 49
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

狗头实习生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值