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

相关推荐
ZTLJQ1 小时前
序列化的艺术:Python JSON处理完全解析
开发语言·python·json
2401_891482172 小时前
多平台UI框架C++开发
开发语言·c++·算法
H5css�海秀2 小时前
今天是自学大模型的第一天(sanjose)
后端·python·node.js·php
阿贵---2 小时前
使用XGBoost赢得Kaggle比赛
jvm·数据库·python
88号技师2 小时前
2026年3月中科院一区SCI-贝塞尔曲线优化算法Bezier curve-based optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
t198751282 小时前
三维点云最小二乘拟合MATLAB程序
开发语言·算法·matlab
无敌昊哥战神2 小时前
【LeetCode 257】二叉树的所有路径(回溯法/深度优先遍历)- Python/C/C++详细题解
c语言·c++·python·leetcode·深度优先
m0_726965983 小时前
面面面,面面(1)
java·开发语言
2401_831920743 小时前
分布式系统安全通信
开发语言·c++·算法
~无忧花开~3 小时前
React状态管理完全指南
开发语言·前端·javascript·react.js·前端框架