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

相关推荐
大圣编程1 小时前
Java 多维数组详解
java·开发语言
殳翰4 小时前
下服务器端开发流程及相关工具介绍(C++)
开发语言·c++
落寞的星星5 小时前
这个对象就包含了已经转换好的DFA和各种词法分析器运转所需要的参数。下一步,我们就可以用ScannerInfo对象创建出Scanner对象,请看下面的代码:
开发语言·c#
nothing&nowhere5 小时前
用 Python 做问卷数据清洗:无效样本检测与处理实战
开发语言·python·数据清洗·数据处理·问卷星·问卷星脚本·刷问卷
花酒锄作田5 小时前
如何发布自己的 Python 库到 PyPI
python
2601_961593425 小时前
Rust 开发环境配置繁琐?RustRover 开箱即用搞定编码调试
开发语言·后端·macos·rust
researcher-Jiang5 小时前
Design Patterns——Template Method入门到情景实战
python·设计模式·模板方法模式
HZZD_HZZD6 小时前
DL/T 645-2026新国标深度解读与智能电表协议适配实战:从帧结构变化到Java采集器升级的全链路改造方案
java·开发语言
多加点辣也没关系8 小时前
JavaScript|第4章:类型转换
开发语言·javascript