Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]


Posted in Python onFebruary 13, 2020

Python中对于数组和列表进行切片操作是很频繁的,当然对于切片的操作可供我们直接使用的函数也是很遍历了,我们今天主要简单总结一下常用集中索引化方式,希望对大家有所帮助吧。

对于列表的切片比较简单,在我之前的博客里面有详细的讲解,需要的话可以去看看,这里就不再详细说了,今天主要是讲解对于Python中Array对象的操作,我们平时使用比较频繁的一般也就是三维的矩阵了,再高维度的处理方式是相同的,这里我们只讲解三维和二维的使用。

对于X[:,0];

是取二维数组中第一维的所有数据

对于X[:,1]

是取二维数组中第二维的所有数据

对于X[:,m:n]

是取二维数组中第m维到第n-1维的所有数据

对于X[:,:,0]

是取三维矩阵中第一维的所有数据

对于X[:,:,1]

是取三维矩阵中第二维的所有数据

对于X[:,:,m:n]

是取三维矩阵中第m维到第n-1维的所有数据

这样的讲解可能还是有点抽象,下面我们用具体的实例来讲解,相信会更加容易理解,具体如下:

#!usr/bin/env python
#encoding:utf-8
from __future__ import division
 
'''
__Author__:沂水寒城
学习Python中的X[:,0]、X[:,1]、X[:,:,0]、X[:,:,1]、X[:,m:n]和X[:,:,m:n]
'''
 
import numpy as np
 
def simple_test():
  '''
  简单的小实验
  '''
  data_list=[[1,2,3],[1,2,1],[3,4,5],[4,5,6],[5,6,7],[6,7,8],[6,7,9],[0,4,7],[4,6,0],[2,9,1],[5,8,7],[9,7,8],[3,7,9]]
  # data_list.toarray()
  data_list=np.array(data_list)
  print 'X[:,0]结果输出为:'
  print data_list[:,0] 
  print 'X[:,1]结果输出为:'
  print data_list[:,1]
  print 'X[:,m:n]结果输出为:'
  print data_list[:,0:1]
  data_list=[[[1,2],[1,0],[3,4],[7,9],[4,0]],[[1,4],[1,5],[3,6],[8,9],[5,0]],[[8,2],[1,8],[3,5],[7,3],[4,6]],
        [[1,1],[1,2],[3,5],[7,6],[7,8]],[[9,2],[1,3],[3,5],[7,67],[4,4]],[[8,2],[1,9],[3,43],[7,3],[43,0]],
        [[1,22],[1,2],[3,42],[7,29],[4,20]],[[1,5],[1,20],[3,24],[17,9],[4,10]],[[11,2],[1,110],[3,14],[7,4],[4,2]]]
  data_list=np.array(data_list)
  print 'X[:,:,0]结果输出为:'
  print data_list[:,:,0] 
  print 'X[:,:,1]结果输出为:'
  print data_list[:,:,1]
  print 'X[:,:,m:n]结果输出为:'
  print data_list[:,:,0:1]
 
 
if __name__ == '__main__':
  simple_test()

结果如下:

X[:,0]结果输出为:
[1 1 3 4 5 6 6 0 4 2 5 9 3]
X[:,1]结果输出为:
[2 2 4 5 6 7 7 4 6 9 8 7 7]
X[:,m:n]结果输出为:
[[1]
 [1]
 [3]
 [4]
 [5]
 [6]
 [6]
 [0]
 [4]
 [2]
 [5]
 [9]
 [3]]
X[:,:,0]结果输出为:
[[ 1  1  3  7  4]
 [ 1  1  3  8  5]
 [ 8  1  3  7  4]
 [ 1  1  3  7  7]
 [ 9  1  3  7  4]
 [ 8  1  3  7 43]
 [ 1  1  3  7  4]
 [ 1  1  3 17  4]
 [11  1  3  7  4]]
X[:,:,1]结果输出为:
[[  2   0   4   9   0]
 [  4   5   6   9   0]
 [  2   8   5   3   6]
 [  1   2   5   6   8]
 [  2   3   5  67   4]
 [  2   9  43   3   0]
 [ 22   2  42  29  20]
 [  5  20  24   9  10]
 [  2 110  14   4   2]]
X[:,:,m:n]结果输出为:
[[[ 1]
  [ 1]
  [ 3]
  [ 7]
  [ 4]]
 
 [[ 1]
  [ 1]
  [ 3]
  [ 8]
  [ 5]]
 
 [[ 8]
  [ 1]
  [ 3]
  [ 7]
  [ 4]]
 
 [[ 1]
  [ 1]
  [ 3]
  [ 7]
  [ 7]]
 
 [[ 9]
  [ 1]
  [ 3]
  [ 7]
  [ 4]]
 
 [[ 8]
  [ 1]
  [ 3]
  [ 7]
  [43]]
 
 [[ 1]
  [ 1]
  [ 3]
  [ 7]
  [ 4]]
 
 [[ 1]
  [ 1]
  [ 3]
  [17]
  [ 4]]
 
 [[11]
  [ 1]
  [ 3]
  [ 7]
  [ 4]]]
[Finished in 0.6s]

果然还是很方便,做个记录,欢迎交流!

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python Deque 模块使用详解
Jul 04 Python
Python中的闭包总结
Sep 18 Python
简单讲解Python编程中namedtuple类的用法
Jun 21 Python
python 爬虫出现403禁止访问错误详解
Mar 11 Python
Python无损音乐搜索引擎实现代码
Feb 02 Python
python根据list重命名文件夹里的所有文件实例
Oct 25 Python
Python实现删除排序数组中重复项的两种方法示例
Jan 31 Python
python3 字符串/列表/元组(str/list/tuple)相互转换方法及join()函数的使用
Apr 03 Python
Django生成PDF文档显示网页上以及PDF中文显示乱码的解决方法
Dec 17 Python
Python使用plt.boxplot() 参数绘制箱线图
Jun 04 Python
Java byte数组操纵方式代码实例解析
Jul 22 Python
详解Python GUI编程之PyQt5入门到实战
Dec 10 Python
基于python的docx模块处理word和WPS的docx格式文件方式
Feb 13 #Python
python 中的[:-1]和[::-1]的具体使用
Feb 13 #Python
Python使用docx模块实现刷题功能代码
Feb 13 #Python
Tensorflow训练MNIST手写数字识别模型
Feb 13 #Python
Python3 读取Word文件方式
Feb 13 #Python
解决Python import docx出错DLL load failed的问题
Feb 13 #Python
python求最大公约数和最小公倍数的简单方法
Feb 13 #Python
You might like
深入解析yii权限分级式访问控制的实现(非RBAC法)
2013/06/13 PHP
PHP获取windows登录用户名的方法
2014/06/24 PHP
使用WordPress发送电子邮件的相关PHP函数用法解析
2015/12/15 PHP
Yii2 中实现单点登录的方法
2018/03/09 PHP
javascript时间函数大全
2014/06/30 Javascript
node.js中的url.parse方法使用说明
2014/12/10 Javascript
jquery插件bxslider用法实例分析
2015/04/16 Javascript
JavaScript基于ajax编辑信息用法实例
2015/07/15 Javascript
Google 地图控件集详解及实例代码
2016/08/06 Javascript
JavaScript 继承详解(五)
2016/10/11 Javascript
JS轮播图中缓动函数的封装
2020/11/25 Javascript
JavaScript 实现 Tab 点击切换实例代码
2017/03/25 Javascript
微信小程序 检查接口状态实例详解
2017/06/23 Javascript
使用angular帮你实现拖拽的示例
2017/07/05 Javascript
vue.js通过路由实现经典的三栏布局实例代码
2018/07/08 Javascript
layui点击按钮添加可编辑的一行方法
2018/08/15 Javascript
JS实现斐波那契数列的五种方式(小结)
2020/09/09 Javascript
uniapp实现横向滚动选择日期
2020/10/21 Javascript
Python文档生成工具pydoc使用介绍
2015/06/02 Python
在Python的Django框架中获取单个对象数据的简单方法
2015/07/17 Python
python正则表达式re之compile函数解析
2017/10/25 Python
Python常见工厂函数用法示例
2018/03/21 Python
Python下利用BeautifulSoup解析HTML的实现
2020/01/17 Python
全面介绍python中很常用的单元测试框架unitest
2020/12/14 Python
西班牙在线光学:Visual-Click
2020/06/22 全球购物
介绍一下JMS编程步骤
2015/09/22 面试题
小区门卫工作职责
2013/12/14 职场文书
学生会竞选演讲稿学习部
2014/08/25 职场文书
基层党组织建设整改方案
2014/09/16 职场文书
作风建设剖析材料
2014/10/06 职场文书
学习群众路线的心得体会
2014/11/05 职场文书
党章学习心得体会2016
2016/01/14 职场文书
成功的商业计划书这样写才最靠谱
2019/07/12 职场文书
Vue3 Composition API的使用简介
2021/03/29 Vue.js
如何用JavaScript实现一个数组惰性求值库
2021/05/05 Javascript
vue代码分块和懒加载非必要资源文件
2022/04/11 Vue.js