python numpy数组的索引和切片的操作方法


Posted in Python onOctober 20, 2018

NumPy - 简介

NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。

Numeric,即 NumPy 的前身,是由 Jim Hugunin 开发的。 也开发了另一个包 Numarray ,它拥有一些额外的功能。 2005年,Travis Oliphant 通过将 Numarray 的功能集成到 Numeric 包中来创建 NumPy 包。 这个开源项目有很多贡献者。

NumPy 操作

使用NumPy,开发人员可以执行以下操作:

•数组的算数和逻辑运算。

•傅立叶变换和用于图形操作的例程。

•与线性代数有关的操作。 NumPy 拥有线性代数和随机数生成的内置函数。

numpy库多维数组的类型和列表的类型非常类似,同样有索引和切片功能:

索引:获取数组中特定位置元素的过程

切片:获取数组元素子集的过程

1.一维数组

# 准备一个数组
arr1=np.array(np.arange(9))
arr1

array([0, 1, 2, 3, 4, 5, 6, 7, 8])

# 索引
arr[-1] #8
arr1[arr1.size-2] #7
arr1[arr1.size-9] #0 
# 切片 :[start:end:step]
arr1[1:4] #左开右闭的区间
arr1[1:5:2] #array([1,3])
arr1[::-1] # 反向取所有,-1变成了步长

2.二维数组

# 准备一个二维数组
arr2=np.array([
 np.arange(1,4),
 np.arange(5,8)
])

arr2

array([[1, 2, 3],
 [5, 6, 7]])

# 索引
arr2[0][2] # 3
arr2[0,2] # 3
# 切片
arr2[0,] # array([1,2,3]) 
arr2[0,::] # 同上
arr2[0,0:3] #array([1,2])

3.多维数组

arr4=np.arange(1,25).reshape(2,3,4)
arr4

array([[[ 1, 2, 3, 4],
 [ 5, 6, 7, 8],
 [ 9, 10, 11, 12]],
 [[13, 14, 15, 16],
 [17, 18, 19, 20],
 [21, 22, 23, 24]]])

arr4[1][2][2] # 23
arr4[1,1,1] #18
arr3[1,1,] # array([17,18,19,20])
arr4[1,1,::] # 同上
arr4[1,1,::-1] # array([20, 19, 18, 17])
arr4[0,1:3] 
#array([[ 5, 6, 7, 8],
  #[ 9, 10, 11, 12]])
arr4[:1,1] #array([ 6, 18])
b[1,:,2] #array([15, 19, 23])
b[1,...] 
#array([[13, 14, 15, 16],
 # [17, 18, 19, 20],
 # [21, 22, 23, 24]])
b[0,::-1,-1] #array([12, 8, 4])
b[:,:,-1][::-1][:,-1] #array([24, 12])

总结

以上所述是小编给大家介绍的python numpy数组的索引和切片的操作方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
详解JavaScript编程中的window与window.screen对象
Oct 26 Python
python3实现ftp服务功能(服务端 For Linux)
Mar 24 Python
Django中Model的使用方法教程
Mar 07 Python
python如何压缩新文件到已有ZIP文件
Mar 14 Python
Python 中的range(),以及列表切片方法
Jul 02 Python
python是否适合网页编程详解
Oct 04 Python
TensorFlow实现自定义Op方式
Feb 04 Python
使用Matplotlib绘制不同颜色的带箭头的线实例
Apr 17 Python
Python捕获异常堆栈信息的几种方法(小结)
May 18 Python
Python爬虫获取豆瓣电影并写入excel
Jul 31 Python
Python绘制词云图之可视化神器pyecharts的方法
Feb 23 Python
Django中的JWT身份验证的实现
May 07 Python
详解Python字典小结
Oct 20 #Python
在Python dataframe中出生日期转化为年龄的实现方法
Oct 20 #Python
Django中的ajax请求
Oct 19 #Python
Tesserocr库的正确安装方式
Oct 19 #Python
Python中Proxypool库的安装与配置
Oct 19 #Python
在cmder下安装ipython以及环境的搭建
Oct 19 #Python
破解安装Pycharm的方法
Oct 19 #Python
You might like
php实现字符串首字母大写和单词首字母大写的方法
2015/03/14 PHP
php上传功能集后缀名判断和随机命名(强力推荐)
2015/09/10 PHP
使用PHP下载CSS文件中的所有图片【几行代码即可实现】
2016/12/14 PHP
javascript知识点收藏
2007/02/22 Javascript
JS运动基础框架实例分析
2015/03/03 Javascript
JS中innerHTML和pasteHTML的区别实例分析
2016/06/22 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
node.js中的事件处理机制详解
2016/11/26 Javascript
Vue.js如何优雅的进行form validation
2017/04/07 Javascript
nodejs入门教程四:URL相关模块用法分析
2017/04/24 NodeJs
jQuery 实现图片的依次加载图片功能
2017/07/06 jQuery
判断滚动条滑到底部触发事件(实例讲解)
2017/11/15 Javascript
angular4+百分比进度显示插件用法示例
2019/05/05 Javascript
Typescript 中的 interface 和 type 到底有什么区别详解
2019/06/18 Javascript
web.py获取上传文件名的正确方法
2014/08/26 Python
python操作sqlite的CRUD实例分析
2015/05/08 Python
浅析Python 中整型对象存储的位置
2016/05/16 Python
python利用不到一百行代码实现一个小siri
2017/03/02 Python
浅谈django开发者模式中的autoreload是如何实现的
2017/08/18 Python
python实现堆和索引堆的代码示例
2018/03/19 Python
详解Numpy中的广播原则/机制
2018/09/20 Python
Python学习笔记之变量、自定义函数用法示例
2019/05/28 Python
python交易记录链的实现过程详解
2019/07/03 Python
解决Python在导入文件时的FileNotFoundError问题
2020/04/10 Python
Django REST Swagger实现指定api参数
2020/07/07 Python
CSS3 mask 遮罩的具体使用方法
2017/11/03 HTML / CSS
Huda Beauty官方商店:化妆和美容产品
2020/09/05 全球购物
FragranceNet中文网:北美健康美容线上零售商
2020/08/26 全球购物
什么是静态路由?什么是动态路由?各自的特点是什么?
2015/09/16 面试题
小孩百日宴答谢词
2014/01/15 职场文书
基层工作经历证明
2015/06/19 职场文书
房屋质量投诉书
2015/07/02 职场文书
2019商业计划书格式、范文
2019/04/24 职场文书
python3 删除所有自定义变量的操作
2021/04/08 Python
CSS 实现多彩、智能的阴影效果
2021/05/12 HTML / CSS
Mysql Online DDL的使用详解
2021/05/20 MySQL