Python高级特性——详解多维数组切片(Slice)


Posted in Python onNovember 26, 2019

(1) 我们先用arange函数创建一个数组并改变其维度,使之变成一个三维数组:

>>> a = np.arange(24).reshape(2,3,4)
>>> a
array([[[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11]],

    [[12, 13, 14, 15],
    [16, 17, 18, 19],
    [20, 21, 22, 23]]])

多维数组a中有0~23的整数,共24个元素,是一个2×3×4的三维数组。我们可以形象地把它看做一个两层楼建筑,每层楼有12个房间,并排列成3行4列。

(2) 我们可以用三维坐标来选定任意一个房间,即楼层、行号和列号。例如,选定第1层楼、第1行、第1列的房间,可以这样表示:

>>> a[0, 0, 0]
0

(3) 如果我们不关心楼层,也就是说要选取所有楼层的第1行、第1列的房间,那么可以将第1个下标用英文标点的冒号:来代替:

>>> a[:, 0, 0]
array([ 0, 12])

选取第1层楼的所有房间:

>>> a[0]
array([[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11]])

或者我们可以这样写:

>>> a[0, :, :]
array([[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11]])

多个冒号可以用一个省略号(…)来代替,因此上面的代码等价于:

>>> a[0, ...]
array([[ 0, 1, 2, 3],
    [ 4, 5, 6, 7],
    [ 8, 9, 10, 11]])

进而可以选取第1层楼、第2排的所有房间:

>>> a[0, 1]
array([4, 5, 6, 7])

以上这篇Python高级特性——详解多维数组切片(Slice)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python链接Oracle数据库的方法
Jun 28 Python
Python函数中*args和**kwargs来传递变长参数的用法
Jan 26 Python
Python使用Paramiko模块编写脚本进行远程服务器操作
May 05 Python
Python爬虫爬取美剧网站的实现代码
Sep 03 Python
Python爬取网易云音乐上评论火爆的歌曲
Jan 19 Python
python实现对求解最长回文子串的动态规划算法
Jun 02 Python
使用python将图片格式转换为ico格式的示例
Oct 22 Python
基于python实现高速视频传输程序
May 05 Python
Python表达式的优先级详解
Feb 18 Python
python3 自动打印出最新版本执行的mysql2redis实例
Apr 09 Python
python 实现 hive中类似 lateral view explode的功能示例
May 18 Python
Python能做什么
Jun 02 Python
Python实现随机取一个矩阵数组的某几行
Nov 26 #Python
Python 求数组局部最大值的实例
Nov 26 #Python
Python 实现取多维数组第n维的前几位
Nov 26 #Python
python获取array中指定元素的示例
Nov 26 #Python
Flask之pipenv虚拟环境的实现
Nov 26 #Python
Python 根据数据模板创建shapefile的实现
Nov 26 #Python
Python实现直播推流效果
Nov 26 #Python
You might like
《神奇女侠:血脉》神力女超人大战犯罪公司
2020/04/09 欧美动漫
Apache环境下PHP利用HTTP缓存协议原理解析及应用分析
2010/02/16 PHP
php解析http获取的json字符串变量总是空白null
2015/03/02 PHP
PHP怎样用正则抓取页面中的网址
2016/08/09 PHP
PHP框架自动加载类文件原理详解
2017/06/06 PHP
PHP开发之归档格式phar文件概念与用法详解【创建,使用,解包还原提取】
2017/11/17 PHP
Thinkphp5.0框架视图view的循环标签用法示例
2019/10/12 PHP
ie支持function.bind()方法实现代码
2012/12/27 Javascript
IE下写xml文件的两种方式(fso/saveAs)
2013/08/05 Javascript
举例简介AngularJS的内部语言环境
2015/06/17 Javascript
Jqgrid之强大的表格插件应用
2015/12/02 Javascript
jqGrid用法汇总(全经典)
2016/06/28 Javascript
Javascript中this绑定的3种方法与比较
2016/10/13 Javascript
JS使用cookie实现只出现一次的广告代码效果
2017/04/22 Javascript
Angular 4.x 路由快速入门学习
2017/05/03 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
2017/05/19 jQuery
echarts学习笔记之箱线图的分析与绘制详解
2017/11/22 Javascript
p5.js入门教程之键盘交互
2018/03/19 Javascript
Element-ui DatePicker显示周数的方法示例
2019/07/19 Javascript
微信小程序文字显示换行问题
2019/07/28 Javascript
在node环境下parse Smarty模板的使用示例代码
2019/11/15 Javascript
[03:36]2014DOTA2 TI小组赛综述 八强诞生进军钥匙球馆
2014/07/15 DOTA
python实现朴素贝叶斯算法
2018/11/19 Python
Python数据预处理之数据规范化(归一化)示例
2019/01/08 Python
python统计文章中单词出现次数实例
2020/02/27 Python
德国家具购物网站:Möbel Höffner
2019/08/26 全球购物
毕业生就业推荐信范文
2013/12/01 职场文书
基层工作经历证明
2014/01/13 职场文书
媒体宣传策划方案
2014/05/25 职场文书
银行服务明星推荐材料
2014/05/29 职场文书
组工干部对照检查材料
2014/08/25 职场文书
软件测试专业推荐信
2014/09/18 职场文书
清洁工个人工作总结
2015/03/05 职场文书
2015年法律事务部工作总结
2015/07/27 职场文书
学术会议开幕词
2016/03/03 职场文书
详解Golang如何实现支持随机删除元素的堆
2022/09/23 Python