关于python中的[::-1],[:,:,::-1]的反转理解
其实就是单纯的关于反转,我们只需要记住每一个列表的中间有两个冒号:
即[a: b:c],意思是从a到b,间隔是c,因为经常省略c,所以经常看到[a:b]。
一、在一维数据中的反转
import numpy as np
testnum = np.arange(1,10)
testnum
array([1, 2, 3, 4, 5, 6, 7, 8, 9])
testnum[8:1:-1]
array([9, 8, 7, 6, 5, 4, 3])
二、在多维数据中的反转。此时就需要分辨,反转的是行、列、还是维。
testnum1 = np.random.randint(1,10,size=(4,5,3)) testnum1
array([[[4, 8, 3],
[8, 4, 3],
[7, 7, 2],
[9, 6, 9],
[7, 5, 3]],
[[2, 1, 3],
[6, 4, 7],
[4, 5, 9],
[8, 6, 4],
[5, 7, 5]],
[[8, 7, 5],
[5, 3, 1],
[2, 9, 2],
[6, 5, 3],
[2, 9, 8]],
[[3, 9, 8],
[8, 7, 7],
[8, 3, 4],
[9, 8, 9],
[5, 1, 8]]])
testnum1[:,:,::-1]
像上面这个代码就是反转列
array([[[3, 8, 4],
[3, 4, 8],
[2, 7, 7],
[9, 6, 9],
[3, 5, 7]],
[[3, 1, 2],
[7, 4, 6],
[9, 5, 4],
[4, 6, 8],
[5, 7, 5]],
[[5, 7, 8],
[1, 3, 5],
[2, 9, 2],
[3, 5, 6],
[8, 9, 2]],
[[8, 9, 3],
[7, 7, 8],
[4, 3, 8],
[9, 8, 9],
[8, 1, 5]]])
比如下面这个就是反转维数
testnum1[::-1,:,:]
array([[[3, 9, 8],
[8, 7, 7],
[8, 3, 4],
[9, 8, 9],
[5, 1, 8]],
[[8, 7, 5],
[5, 3, 1],
[2, 9, 2],
[6, 5, 3],
[2, 9, 8]],
[[2, 1, 3],
[6, 4, 7],
[4, 5, 9],
[8, 6, 4],
[5, 7, 5]],
[[4, 8, 3],
[8, 4, 3],
[7, 7, 2],
[9, 6, 9],
[7, 5, 3]]])
关于python中的[::-1],[:,:,::-1]的反转理解的更多相关文章
- python中闭包和装饰器的理解(关于python中闭包和装饰器解释最好的文章)
转载:http://python.jobbole.com/81683/ 呵呵!作为一名教python的老师,我发现学生们基本上一开始很难搞定python的装饰器,也许因为装饰器确实很难懂.搞定装饰器需 ...
- Python中的装饰器的初步理解
什么是装饰器? 装饰器的本质是一个函数,其作用是用来装饰其他的函数,给其他函数附加行的功能. 原则: 1.不能修改被装饰函数的源码. 2.不能改变被装饰函数的调用方式. 那么什么是函数? 简单的来说: ...
- Python中的*args和**kwargs的理解与用法
一.简述 1.*args和**kwargs 这两个是python中方法的可变参数. 2.*args表示任何多个无名参数,它是一个tuple: 3.**kwargs表示关键字参数,它是一个dict.并且 ...
- Python 中的变量还能这样理解(白话)
一.案例分析 1.思考 计算软件测试大佬柠檬小姐姐,每月能存多少钱 # 计算软件测试大佬柠檬小姐姐,每月能存多少钱 # 坐标:深圳 # 2018年1月份 # 房租水电 4000元 # 伙食费 1000 ...
- python中对多态和多态性的理解
python中对多态的理解 一.多态 多态是指一类事物有多种形态,比如动物类,可以有猫,狗,猪等等.(一个抽象类有多个子类,因而多态的概念依赖于继承) import abc class Animal( ...
- python中的__name__=='__main__'如何简单理解(一)
1. 摘要: 通俗的理解_name_ == '_main_':假如你叫小明.py,在朋友眼中,你是小明(_name_ == '小明'):在你自己眼中,你是你自己(_name_ == '_main_') ...
- python中的字符串编码问题——1.理解编码和解码问题
理解编码与解码(python2.7):1)编码 是根据一个想要的编码名称,把一个字符串翻译为其原始字节形式.>>> u_str=u'字符串编码aabbbcccddd'>> ...
- python中关于__init__模块文件的理解
一般来说新建的一个包下,必然会有一个__init__文件?那么这个文件到底邮有和作用呢? 总结几点如下: 1.__init__文件在包下,其中定义了包的属性,方法;必须要有这个文件,如果没有的话,这个 ...
- python中的字符串编码问题——2.理解ASCII码、ANSI码、Unicode编码、UTF-8编码
ASCII码:全名是American Standard Code for Information Interchange,ASCII码中,一个英文字母(不分大小写)占一个字节的空间,范围0x00~0x ...
随机推荐
- WSL ubuntu重置密码
1. 在powershell中切换到root: 2. 进入ubuntu: 3. 修改制定用户的密码: 4. 切换回默认的用户:
- 四、Jmeter 集合点(实际场景应用)
一.jmeter集合点的作用域及作用范围 先明确一些概念:1)定时器是在每个sampler(采样器)之前执行的,而不是之后: 是的,你没有看错,不管这个定时器的位置放在sampler之后,还是之下,它 ...
- Qt内部的d指针和q指针手把手教你实现
Qt内部的d指针和q指针 在讲Qt的D指针之前让我们来简单的解释一下D指针出现的目的,目的是什么呢?保证模块间的二进制兼容. 什么是二进制兼容呢,简单说就是如果自己的程序使用了第三方模块,二进制兼容可 ...
- Redis 事务 & 消息队列
Redis 消息队列介绍 什么是消息队列 消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,有消息系统来确保信息的可靠传递,消息生产者只管把消息发布到消息队列中而不 ...
- OpenStack Train版-7.neutron网络服务概述
网络服务NEUTRON概述 一.NEUTRON架构 OpenStack的网络服务neutron是整个OpenStack中最复杂的一个部分,它的基本架构是一个中心服务(neutron-server)外加 ...
- 2019牛客多校第一场I Points Division(DP)题解
题意: n个点,分成两组A,B,如果点i在A中,那么贡献值\(a_i\),反之为\(b_i\). 现要求任意\(i \in A,j \in B\)不存在 \(x_i >= x_j\) 且 \(y ...
- Redis五大类型及底层实现原理
目录 简单动态字符串链表字典跳跃表整数集合压缩列表对象 对象的类型与编码字符串对象列表对象哈希对象 集合对象有序集合对象类型检查与命令多态内存回收对象共享对象的空转时长 简单动态字符串 导读 Red ...
- JWT实现登录认证实例
JWT全称JSON Web Token,是一个紧凑的,自包含的,安全的信息交换协议.JWT有很多方面的应用,例如权限认证,信息交换等.本文将简单介绍JWT登录权限认证的一个实例操作. JWT组成 JW ...
- 『数据结构与算法』二叉查找树(BST)
微信搜索:码农StayUp 主页地址:https://gozhuyinglong.github.io 源码分享:https://github.com/gozhuyinglong/blog-demos ...
- Java开发工程师最新面试题库系列——集合部分(附答案)
集合 如果你有更好的想法请在评论区留下您的答案,一起交流讨论 说说常见的集合有哪些? 答:主要分List.Set.Map.Queue四类,其中包含ArrayList.LinkedList.HashSe ...