切片操作:MATLAB VS Python

一.MATLAB 矩阵的拆分

1.冒号表达式: t = e1:e2:e3

e1表示初始值,e2为步长,e3为终止值(包括e3),产生一个从e1到e3,步长为e2的行向量
eg: t = 0:1:5
t = 0,1,2,3,4,5

2.矩阵元素按列编号,先第一列,再第二列

3.reshape(A,m,n)

将原矩阵A重新排列成m行n列的新矩阵,注意矩阵元素按列存储,仅改变其逻辑结构

4.利用冒号表达式获得子矩阵

(1)A(:,j)表示取A矩阵的第j列全部元素;
A(i,:)表示取A矩阵的第i行全部元素;
A(i,j)表示去A矩阵的第i行第j列元素;

(2)A(i:i+m,:)表示取A矩阵第i~i+m行全部元素;
A(:,k:k+m)表示取A矩阵第k~k+m列全部元素;
A(i:i+m,k:k+m)表示取A矩阵第i~i+m行,并在第k~k+m列的全部元素;

(3)A(:)将矩阵每一列元素堆叠起来,成为一个列向量。如果需要将每行堆叠起来成为一个列向量,则将原矩阵转置即可。

5.删除矩阵中某些元素,对其赋值为空即可: A(:,[2 4]) = [ ]

二. Python 列表切片

1.索引

索引数字从左边开始,第一个是0,然后依次加1;
索引也可从右边编号,右边第一个是-1,然后向左依次减1;
序列的切片,一定要左边的数字小与右边的数字,即序列号是从小到大;

2.反转 A[::-1] 和reversed()

alst = [1,2,3,4,5]
alst[::-1] >>>[5,4,3,2,1]
list(reversed(alst)) >>> [5,4,3,2,1]

3.切片

alst[:t] 表示取列表alst的前t个元素,不包括索引t个元素(索引号从0开始);
alst[:2] >>> [1,2]
alst[t:]表示取列表alst从索引t开始,到最后的所有元素,包括索引号为t的元素;
alst[3:] >>> [4,5]
alst[a:b] 表示取列表alst从索引号a开始到索引号b结束的所有元素,包括索引号为a的元素,不包括索引号为b的元素;
alst[2:4] >>>[3,4]

4.对序列的操作

len():返回序列长度
'+' :连接两个序列
'*':重复序列元素
in: 判断元素是否存在与序列中,然会Ture / False
max():返回最大值
min():返回最小值
cmp(str1,str2):比较两个序列值是否相同,用第一个数的ASCII码减去第二个数的ASCII码,返回1/0/-1

切片操作:MATLAB VS Python的更多相关文章

  1. 第6条:在单次切片操作内,不要同时指定start、end和stride

    核心知识点: 1.使用负步进可以反转取值字符串及ASCII. 2.stride最好不要与start和end用在一起,会降低代码可读性. 除了基本的切片操作之外,python还提供了somelist[s ...

  2. Python array,list,dataframe索引切片操作 2016年07月19日——智浪文档

    array,list,dataframe索引切片操作 2016年07月19日——智浪文档 list,一维,二维array,datafrme,loc.iloc.ix的简单探讨 Numpy数组的索引和切片 ...

  3. Python序列的切片操作与技巧

    切片操作 对于具有序列结构的数据来说,切片操作的方法是:consequence[start_index: end_index: step]. start_index: 表示是第一个元素对象,正索引位置 ...

  4. 关于javascript里面仿python切片操作数组的使用方法

    其实在使用了好一段时间的 python之后,我觉得最让我念念不忘的并不是python每次在写函数或者循环的时候可以少用{}括号这样的东西(ps:其实也是了..感觉很清爽,而且又开始写js的时候老是想用 ...

  5. python学习之“切片操作从入门到精通”

    在python学习开发的过程中,我们总是不断的要对List(列表),Tuple(元组)有取值操作:假如我们有一个列表List1现在想取出1其中的前5个元素,改怎么操作呢? >>> L ...

  6. 【Python实践-4】切片操作去除字符串首尾的空格

    #利用切片操作,实现一个trim()函数,去除字符串首尾的空格,注意不要调用str的strip()方法 def trim(s): while s[0:1]==' ': s=s[1:] while s[ ...

  7. Python中的切片操作

    python中的切片操作功能十分强大,通常我们利用切片来进行提取信息,进行相关的操作,下面就是一些切片的列子. 列如我们从range函数1-100中取7的倍数,函数及结果如下所示: >>& ...

  8. 彻底搞懂Python切片操作

        在利用Python解决各种实际问题的过程中,经常会遇到从某个对象中抽取部分值的情况,切片操作正是专门用于完成这一操作的有力武器.理论上而言,只要条件表达式得当,可以通过单次或多次切片操作实现任 ...

  9. 关于python切片操作笔记

    一. Python可切片对象的索引方式 包括:正索引和负索引两部分,如下图所示,以a = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]为例:   python索引方式.jpg 二. P ...

随机推荐

  1. 8.Move Zeroes(移动零)

    Level:   Easy 题目描述: Given an array nums, write a function to move all 0's to the end of it while mai ...

  2. PAT天梯赛L1-020 帅到没朋友

    题目链接:点击打开链接 当芸芸众生忙着在朋友圈中发照片的时候,总有一些人因为太帅而没有朋友.本题就要求你找出那些帅到没有朋友的人. 输入格式: 输入第一行给出一个正整数N(<=100),是已知朋 ...

  3. http 与 TCP 与 socket 定义,区别

    http://blog.csdn.net/jenminzhang/article/details/47017741 http协议:处于互联网协议的应用层,角色是规定数据传输的格式,http是建立在so ...

  4. SprimgMVC学习笔记(七)—— 上传图片

    一.配置虚拟目录 在tomcat上配置图片虚拟目录,在tomcat下conf/server.xml中添加: <Context docBase="D:\upload\temp" ...

  5. Redis学习笔记(2)—— Redis的安装和使用

    一.CentOS安装Redis 1.1 安装环境 redis是C语言开发的,安装redis需要先将官网下载的源码进行编译,编译依赖gcc环境.如果没有gcc环境,需要安装gcc: yum instal ...

  6. 【学习笔记】JavaScript的基础学习

    [学习笔记]JavaScript的基础学习 一 变量 1 变量命名规则 Camel 标记法 首字母是小写的,接下来的字母都以大写字符开头.例如: var myTestValue = 0, mySeco ...

  7. SQL Server中,varchar和nvarchar如何选择

    正常情况下,我们使用varchar也可以存储中文字符,但是如果遇到操作系统是英文操作系统并且对中文字体的支持不全面时, 在SQL Server存储中文字符为varchar就会出现乱码(显示为??). ...

  8. Nginx根据目录自动生成二级域名

    前言:     每次创建二级域名如果都修改一次配置文件的话,项目多了会带来很多不必要的工作量,如果能够在一个web目录下创建一个文件夹并且自动生成文件目录的话,那真是极好的,本文就基于Nginx贴出这 ...

  9. bs4的简单使用

    一.使用流程 解析流程: 1.pip install bs4 2.导包:from bs4 import BeautifulSoup 3.实例化一个BeautifulSoup对象(将页面源码数据加载到该 ...

  10. layui的表单功能

    作为一个phper还是非常喜欢这个插件的~虽然在vue的群里面说这个插件好被人怼过..废话不多说, 这次使用到的是layui的表单功能.上次的日历忘记做笔记了非常可惜,大部分其实跟着文档撸就可以,这次 ...