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的理解和应用。

相关推荐
伞伞悦读8 分钟前
【第14期】Python 基础语法入门:缩进、注释、标识符、代码块和解释器执行
python
Java后端的Ai之路11 分钟前
03、Python - 抽象工厂模式
开发语言·python·设计模式·抽象工厂模式·通用智慧
吴声子夜歌11 分钟前
Java——开发中通用的方法和准则(一)
java·开发语言
GGG76615 分钟前
Python 运维自动化:psutil+IPy 系统与网络信息采集深度实战
运维·python·云原生·pip
可乐鸡翅yeah_19 分钟前
个人 / 外包流媒体项目交付实战,M3U8 验收与问题闭环完整工作流
运维·网络·python·低代码·django·m3u8·在线播放
常驻客栈30 分钟前
B-深入理解计算机系统第3版之第11章:网络编程
开发语言·笔记·学习笔记·常驻客栈·深入理解计算机系统
旧梦952735 分钟前
Java 单例模式:从基础到实战的完整指南
java·开发语言·单例模式
小小晓.1 小时前
C++ 值类别与完美转发深度剖析:从左值右值到 std::forward 源码解密
开发语言·c++·算法
人机(未转人工)1 小时前
python 批量测试ip是否能ping( 多线程 )
python
cndes1 小时前
安装Miniconda+Jupyter notebook
ide·python·jupyter