当前位置:首页 > 编程教程 > Python技术文章 > python 多维切片之冒号和三个点

深入理解python多维切片之冒号和三个点

  • 发布时间:
  • 作者:码农之家
  • 点击:159

这篇文章主要知识点是关于python、多维切片、冒号、三个点、的内容,如果大家想对相关知识点有系统深入的学习,可以参阅以下电子书

毫无障碍学Python
毫无障碍学Python含视频源码版
  • 类型:Python大小:640.6 MB格式:PDF作者:邓文渊
立即下载

python 多维切片之冒号和三个点

下面为大家分享一篇python 多维切片之冒号和三个点的用法介绍,具有很好的参考价值,希望对大家有所帮助。一起过来看看吧

 

初学python和numpy,对在学习多维切片的过程中遇到的问题做个总结。

一维切片就不说了,比较简单,先说下二维的,二维的理解了多维的就简单了。举个例子先建立一个5x5的二维数组

python 多维切片之冒号和三个点

多维的切片是按照各个维度分别取

python 多维切片之冒号和三个点

这里就分别输出第一维的2-3和第二维的3-5(索引从0开始)。

python 多维切片之冒号和三个点

这里是行取全部,列取第3-5。

python 多维切片之冒号和三个点

这里应该是大家最疑惑的地方了,为什么列的参数改成None,输出的shape都变了,这里大家要知道,None代表新增加一个维度,它有一个别称叫newaxis,大家可以输出一下numpy.newaxis就知道了,那么这个别称应该顾名思义了吧。那么为什么是5x1x5,而不是5x5x1呢,那是因为你在第二维上用了None,你如果在第三维上用就会变成5x5x1了,不信你看

python 多维切片之冒号和三个点

这下大家应该明白了吧。就是说None放在哪一维,就会在哪一维上出现新的维度。

再看个更奇葩的

python 多维切片之冒号和三个点

三个点是什么鬼,凭记忆这不是可以换行的操作么,但这里不是,它是省略所有的冒号来用省略号代替,大家看这个a[:, :, None]和a[…, None]的输出是一样的,就是因为…代替了前面两个冒号。这下应该清楚了。

至于三维以上的,那跟二维是一模一样啊。

 

 

 

 

以上就是python 多维切片之冒号和三个点的详细内容,更多请关注码农之家其它相关文章!

以上就是本次给大家分享的关于java的全部知识点内容总结,大家还可以在下方相关文章里找到相关文章进一步学习,感谢大家的阅读和支持。

python 相关电子书
学习笔记
网友NO.417098

Python多维/嵌套字典数据无限遍历的实现

最近拾回Django学习,实例练习中遇到了对多维字典类型数据的遍历操作问题,Google查询没有相关资料…毕竟是新手,到自己动手时发现并非想象中简单,颇有两次曲折才最终实现效果,将过程记录下来希望对大家有用。 实例数据(多重嵌套): person = {"male":{"name":"Shawn"}, "female":{"name":"Betty","age":23},"children":{"name":{"first_name":"李", "last_name":{"old":"明明","now":"铭"}},"age":4}} 目的: 遍历person中所有嵌套字典类型数据,并以 key : value 的方式显示思路:首先分析数据是否符合字典特征打印该数据的key及对应value循环检查该数据的每一个子value是否符合字典特征,如果符合则迭代执行,不符合则返回循环继续执行至结束 具体代码: def is_dict(dict_a): #此方法弃用,python已提供数据类型检测方法isinstance() try: dict_a.keys() except Exception , data: return False return True def list_all_dic……

网友NO.234010

python统计多维数组的行数和列数实例

python菜鸟,每天都要进步一点点。 二维元组的例子: A = ((1, 1, 1), (1, 1, 1),(1, 1, 1),(0, 0, 0)) print len(A) # 4, print len(A[0]) # 3 同样的如果是多维,每一维长度应该是 len(A[i]) 以上这篇python统计多维数组的行数和列数实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持码农之家。 ……

网友NO.461521

Python动态生成多维数组的方法示例

本文实例讲述了Python动态生成多维数组的方法。分享给大家供大家参考,具体如下: 多维数组其实就是多个一维数组的嵌套,Python中有原生的list,类似一个动态数组。 所以动态生成多维数组的思想就是在list中动态嵌套添加list。 下面代码生成一个一个3×3×2的三维数组: # coding:utf-8# 使用Python3中的print函数from __future__ import print_functionarr = []# 基本思想是在list中动态添加list,每个list可以嵌套,这样就可以形成多维数组了# arr中保存的而是row的集合,row中保存的是col的集合# 这是一个3×3×2的三维数组for i in range(3): row = [] for j in range(3): col = [] col.append(i + j) col.append(i * j) row.append(col) arr.append(row)print(arr)print("Output Result:")for i in range(3): for j in range(3): for k in range(2): print('[', end='') print(i, end=', ') print(j, end=', ') print(k, end='] = ') print(arr[i][j][k]) 运行结果: 更多关于……

网友NO.726319

python归一化多维数组的方法

本篇文章给大家分享的内容是python归一化多维数组的方法 ,具有一定的参考价值,有需要的朋友参考一下 今天遇到需要归一化多维数组的问题,但是在网上查阅了很多资料都是归一化数组的一行或者一列,对于怎么归一化一个多维数组的资料比较少,可是在tensorflow中为了训练神经网络常常需要用到多维数据。因此归一化多维数组非常有必要。 在查阅了大量资料之后发现在sklearn库中的preprocessing可以直接归一化多维数组。 1、使用sklearn.preprocessing.scale()函数,对给定数据进行标准化:具体公式是(x - mean)/std。其含义是:对每一列的数据减去这一列的均值,然后除以这一列数据的标准差。最终得到的数据都在0附近,方差为1。具体程序示例如下: from sklearn import preprocessingdata_normal = preprocessing.scale(data)#data是多维数据 2、 使用sklearn.preprocessing.StandardScaler类,……

<
1
>

Copyright 2018-2020 www.xz577.com 码农之家

版权投诉 / 书籍推广 / 赞助:520161757@qq.com