NumPy科学计算库学习_007_NumPy数组的基本索引和切片
导入模块
import numpy as np
一维数组切片
创建一个NumPy数组
arr = np.array([0,1,2,3,4,5,6,7,8,9])
print("【arr】\n",arr)
【arr】
[0 1 2 3 4 5 6 7 8 9]
从NumPy数组中选定一个元素
print("【选取NumPy数组中的第2个元素】\n",arr[1])
【选取NumPy数组中的第2个元素】
1
NumPy数组的连续数组切片
print("【NumPy数组的连续数组切片】\n",arr[2:6],"{范围是[2,6)}")
【NumPy数组的连续数组切片】
[2 3 4 5] {范围是[2,6)}
NumPy数组指定起始索引
+结束索引
+步数
的切片操作
print("【NumPy数组中:索引[0,5),每2个数取一个元素】\n",arr[0:5:2])
【NumPy数组中:索引[0,5),每2个数取一个元素】
[0 2 4]
NumPy数组指定起始索引为空
+结束索引为空
+步数
的切片操作
arr[::1]
即为获取整个NumPy数组arr[::-1]
即为倒序整个NumPy数组arr[::-2]
即为倒序整个NumPy数组后,每2个数取一个
print("【NumPy数组中:起始索引为空默认从0开始;结束索引为空默认到最后一个;每2个数取一个元素】\n",arr[::2])
【NumPy数组中:起始索引为空默认从0开始;结束索引为空默认到最后一个;每2个数取一个元素】
[0 2 4 6 8]
NumPy数组的连续切片赋值
arr[1:3]=1024
print("【NumPy数组的连续切片赋值】\n",arr,"{范围是[1,3)}")
【NumPy数组的连续切片赋值】
[ 0 1024 1024 3 4 5 6 7 8 9] {范围是[1,3)}
根据索引位置截取NumPy数组
print("【根据索引位置截取NumPy数组】\n",arr[[2,4,5,7]])
【根据索引位置截取NumPy数组】
[1024 4 5 7]
二维数组切片
创建一个2维NumPy数组
arr_2_dim = np.array([[1,2,3],[4,5,6],[7,8,9],[10,11,12]])
print("【arr_2_dim】\n",arr_2_dim)
【arr_2_dim】
[[ 1 2 3]
[ 4 5 6]
[ 7 8 9]
[10 11 12]]
2维NumPy数组中提取一个元素
numpy_arr[a,b]
等价于numpy_arr[a][b]
print("【索引第2行最后1列(0开始),获取一个元素】\n",arr_2_dim[2,-1])
【索引第2行最后1列(0开始),获取一个元素】
9
2维NumPy数组的截取数组元素之间相邻的
print("【行:[0,2);列:[-2,最后]】\n",arr_2_dim[:2,-2:])
【行:[0,2);列:[-2,最后]】
[[2 3]
[5 6]]
print("【行:[0,2);列:[-2,最后)】\n",arr_2_dim[:2,-2:-1])
【行:[0,2);列:[-2,最后)】
[[2]
[5]]
标签:
NumPy
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)