04.Python代码NumPy-通过索引或切片来访问和修改
提示:帮帮志会陆续更新非常多的IT技术知识,希望分享的内容对您有用。本章分享的是Python基础语法。前后每一小节的内容是存在的有:学习and理解的关联性,希望对您有用~
python语法-numPy 第四节 :通过索引或切片来访问和修改
上一小节详细分享了各种不同的方法用来创建NumPy的数组,本小节可能会用到各个方法来创建一个原始数组,如晕,可查:
不同方法创建NumPy数组
文章目录
- 04.Python代码NumPy-通过索引或切片来访问和修改
- 一、索引取值
- 一维数组取值
- 二维数组取值
- 二、切片
- 一维数组切片
- 二维数组切片
- 额外的切片或者索引
- 单个索引 跳着取两个
- 条件切片
一、索引取值
一维数组取值
索引可以获取到数组中的单个元素
取一维数组的数据,从0开始为下标 使用:[下标] 取值
import numpy as np
#从0开始
arr01 = np.array([10, 20, 30, 40, 50])
print(arr01[0]) # 输出第一个元素,结果为10
print(arr01[2]) # 输出第三个元素,结果为30
二维数组取值
取二维数组(矩阵)的数据,从0开始。第一个索引用于选择行,第二个索引用于选择列。
arr02 = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr02)#输出矩阵看一眼
print(arr02[1, 2]) # 输出第二行第三列的元素,结果为6
二、切片
切片的概念:允许访问数组的一部分,而不是单个元素。你可以指定一个范围。
或者从原数组中切割出一个新数组(切片)。
一维数组切片
1.切片对象可以通过内置的 slice 函数
import numpy as npa = np.arange(10)
print(a)
#声明一个切片变量
#较常用:数据处理和人工智能的时候
# 能保证所有数据都是一样的切片。使用同一个切片对象
s = slice(2,7,2)#从索引2开始到7结束,间隔为2
print(a[s]) #将s作为参数传递给a
2.使用冒号分隔切片参数 start:stop:step(开始:结束:步长)
这个返回一个新的数组
a01 = np.arange(10)
print(a01)
a02 = a01[2:7:2]##从索引2开始到7结束,间隔为2
print(a02)
运行结果和刚才一样的
1和2里面的间隔参数,可以不用传。就直接是开始索引到结束索引中间的数据(没有间隔),如:a01[2:7]
3.使用冒号语法
[2],将返回与该索引相对应的单个元素。(这不就是索引语法嘛~)
如果为 [2:],表示从该索引开始以后的所有项都将被提取
arr = np.arange(10)
print(arr)
print(arr[2])
print(arr[2:])
二维数组切片
arr = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
print(arr)
print(arr[1:, 1:]) # 从第二行第二列开始到最后的元素,结果为[[5, 6], [8, 9]]
额外的切片或者索引
单个索引 跳着取两个
arr = np.array([10, 20, 30, 40, 50])
# 选择索引为1和3的元素,结果为[20, 40]
# 没有顺序 没有条件
#注意 语法
print(arr[[1, 3]])
条件切片
arr = np.array([10, 20, 30, 40, 50])
# 选择大于20的元素,结果为[30, 40, 50]
#注意语法
print(arr[arr > 20])
(会陆续更新非常多的IT技术知识及泛IT的电商知识,可以点个关注,共同交流。比心)