python&numpy十四: 关于numpy的基础练习

下面是一些关于NumPy的练习题以及答案:

题目:

1.创建一个长度为10的一维零数组,并将第五个元素设置为1。

2.创建一个大小为5x5的二维数组,其中边界上的元素值为1,其余元素值为0。

3.给定一个一维数组,将所有大于5的元素替换为5。

4.给定一个一维数组,将所有奇数索引位置的元素取相反数。

5.创建一个大小为10的随机数组,并找到其中的最大值和最小值。

答案:

练习1:

创建一个长度为10的一维零数组,并将第五个元素设置为1。

复制代码
import numpy as np

arr = np.zeros(10)
arr[4] = 1

print(arr)

输出结果:[0. 0. 0. 0. 1. 0. 0. 0. 0. 0.]

练习2:

创建一个大小为5x5的二维数组,其中边界上的元素值为1,其余元素值为0。

复制代码
import numpy as np

arr = np.zeros((5, 5))
arr[0, :] = 1
arr[-1, :] = 1
arr[:, 0] = 1
arr[:, -1] = 1

print(arr)

输出结果:

复制代码
[[1. 1. 1. 1. 1.]
 [1. 0. 0. 0. 1.]
 [1. 0. 0. 0. 1.]
 [1. 0. 0. 0. 1.]
 [1. 1. 1. 1. 1.]]

练习3:

给定一个一维数组,将所有大于5的元素替换为5。

复制代码
import numpy as np

arr = np.array([1, 8, 2, 6, 4, 10, 12, 3])
arr[arr > 5] = 5

print(arr)

输出结果:[1 5 2 5 4 5 5 3]

练习4:

给定一个一维数组,将所有奇数索引位置的元素取相反数。

复制代码
import numpy as np

arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9])
arr[1::2] = -arr[1::2]

print(arr)

输出结果:[ 1 -2 3 -4 5 -6 7 -8 9]

练习5:

创建一个大小为10的随机数组,并找到其中的最大值和最小值。

复制代码
import numpy as np

arr = np.random.rand(10)
max_val = np.max(arr)
min_val = np.min(arr)

print("Array:", arr)
print("Max value:", max_val)
print("Min value:", min_val)

输出结果类似:

复制代码
Array: [0.69663739 0.33775502 0.75378663 0.57768405 0.28549115 0.43134244
 0.55627119 0.49357289 0.21644175 0.73342044]
Max value: 0.7537866275861615
Min value: 0.21644175382993298

希望这些练习对你有帮助!你可以使用这些练习来巩固对NumPy的理解和应用。

相关推荐
南梦浅几秒前
全过程步骤(从零到高可用企业网络)
开发语言·网络·php
mjhcsp1 分钟前
C++ 梯度下降法(Gradient Descent):数值优化的核心迭代算法
开发语言·c++·算法
Mr数据杨3 分钟前
【Dv3Admin】Django一键配置权限规则
python·django·sqlite
-杨豫4 分钟前
ZLibrary反爬破解实战:从验证码到加密全突破
python
ok_hahaha5 分钟前
java从头开始-黑马点评-基础篇
java·开发语言
吴声子夜歌8 分钟前
JavaScript——函数
开发语言·javascript·ecmascript
yunyun321238 分钟前
跨语言调用C++接口
开发语言·c++·算法
m0_5180194811 分钟前
C++中的装饰器模式变体
开发语言·c++·算法
SuperEugene15 分钟前
Vue3 + Element Plus 中后台弹窗规范:开闭、传参、回调,告别弹窗地狱|Vue 组件与模板规范篇
开发语言·前端·javascript·vue.js·前端框架
SuperEugene17 分钟前
VXE-Table 4.x 实战规范:列配置 + 合并单元格 + 虚拟滚动,避坑卡顿 / 错乱 / 合并失效|表单与表格规范篇
开发语言·前端·javascript·vue.js·前端框架·vxetable