python数组冒号取值操作
1.冒号的用法
1.1 一个冒号
a[i:j]
这里的i指起始位置,默认为0;j是终止位置,默认为len(a),在取出数组中的值时就会从数组下标i(包括)一直取到下标j(不包括j)
在一个冒号的情况下若出现负数则代表倒数某个位置
a[i:-j]
这里就是从下标i取到倒数第j个下标之前(不包括倒数第j个下标位置的元素)
1.2 两个冒号
a[i:j:h]
这里的i,j还是起始位置和终止位置,h是步长,默认为1
若i/j位置上出现负数依然倒数第i/j个下标的位置,h若为负数则是逆序输出,这时要求起始位置下标大于终止位置
在两个冒号的情况下若h为正数,则i默认为0,j默认为len(a);
若h为负数,则i默认为-1(即最后一个位置),j默认为-len(a)-1(下标0的前一个位置,这样就能输出到下标0了)
2.举例说明
ok,接下来就对冒号更多灵活的用法举例说明
a='python'
b=a[:]
print(b) >>python #一个冒号代表默认全选
a='python'
b=a[1:4:]
print(b) >>yth #冒号后没有写明故代表默认步长为1
a='python'
b=a[:-1]
print(b) >>pytho #-1代表倒数第一个位置,因为:前面的初始位置没有指定,默认为0,就从下标0一直取到最后一个位置之前
a='python'
c=a[1:-2]
print(c) >>yth #-2代表倒数第二个位置,即从下标1取到倒数第二个位置之前
a='python'
b=a[::-1]
print(b) >>nohtyp #前两个冒号和上面一致,就是确定起始位置和终止位置
#第三个参数-1是指步长为-1,也就是逆序输出
#这里a[::-1]相当于 a[-1:-len(a)-1:-1],也就是从最后一个元素到第一个元素
#所以[::-1]经常用来对一个数组进行逆序输出
a='python'
b=a[1:4:-1]
print(b) >>
#这里什么也没有输出,因为按照给定的步长是无法从下标1走到4的,所以输出为空但不会报错
a='python'
b=a[-2:-7:-2]
print(b) >>otp #这里起始位置是-2,终点是-7(不包括,所以输出到-6位置),步长为-2
a = np.array([[1,2,3],[4,5,6],[7,8,9],[11,12,13]])
print(a[::-1,2:0:-1]) >>[[13 12]
[ 9 8]
[ 6 5]
[ 3 2]]
#对于多维数组也是一样的,可以分别对每一维进行操作,中间用逗号分隔
最后再看一个图片举例

python数组冒号取值操作的更多相关文章
- Python 字符串——巧取值和列表——巧取值 对比
Python 字符串——巧取值和列表——巧取值 对比 1.字符串取值实例: samp_string = "Whatever you are, be a good one." for ...
- ng2中 如何使用自定义属性data-id 以及赋值和取值操作
项目环境:ng4.x 写法说明: [attr.data-nurseKey] <div [attr.data-nurseKey]="k.nurseKey"></di ...
- 【C】二级指针探秘 & 星号的两种用法(1.与基本类型结合形成另一种类型,比如与int结合形成int* 2.取值操作)
1)问题:二级指针到底是什么?怎么用的?怎么存放的? #include <stdio.h> #define TEST_ADDR 0x12FF40 void main() { int a = ...
- 用JQUERY为INPUT的TXT类型赋值及取值操作
注意和纯JS操作的区别,一个是对象,一个是字串,如下说明: 在Jquery中,用$("#id")来获得页面的input元素,其相当于document.getElementById( ...
- python迭代器-迭代器取值-for循环-生成器-yield-生成器表达式-常用内置方法-面向过程编程-05
迭代器 迭代器 迭代: # 更新换代(其实也是重复)的过程,每一次的迭代都必须基于上一次的结果(上一次与这一次之间必须是有关系的) 迭代器: # 迭代取值的工具 为什么用迭代器: # 迭代器提供了一种 ...
- java从c struct传来的字节数组中取值
public int getInt(byte[] array,int index) { return (array[index] & 0xff) | (array[index + 1] & ...
- Json数组对象取值
1.数据格式 {"data":[{"username":"xxx","avatar":"xxx",& ...
- Python 字典的取值
不能用.取值 .是获取属性或方法 只能用中括号或者get方法 中括号和get中可以放字符串或者变量 get与[]的区别在于当key不存在,get不会报错,而且get可以设置取不到值时返回的默认值.
- jQuery 取值操作
模板使用: https://startbootstrap.com/themes/sb-admin-2/ 使用的 bootstrap 模块 ,上面的这个网站可以下载 select 取值 <sele ...
随机推荐
- 「题解」「CF1019B」The hat
目录 题目 背景 程序输出 交互程序输入 题解 程序 题目 背景 这是一道交互题. 一共有 \(n\) 个人做成一圈,他们的编号从 \(1\) 到 \(n\). 现在每个人的手里面都有一个数字 \(a ...
- Apache Kafka(十二)Log Cleanup 策略
Log Cleanup 策略 在Kafka中,存在数据过期的机制,称为data expire.如何处理过期数据是根据指定的policy(策略)决定的,而处理过期数据的行为,即为log cleanup. ...
- winform学习(1)初识winform
winform是Windows窗体应用程序 在窗体设计界面 单击鼠标右键--查看代码,即可转到Form1.cs的代码界面 从代码界面转到窗体设计界面的三种快捷方法:①双击解决方案资源管理器的 For ...
- SRAM速度提升思路及方法
SRAM总体分为两大部分,一部分是存储阵列,另一部分是外围辅助电路.提高SRAM工作速度从这两大方面着手. ·存储阵列 对于存储阵列,首先可以通过降低工艺节点,以达到提高器件本身速度,从而提高整体SR ...
- Hadoop2.0之YARN组件
官方文档:https://hadoop.apache.org/docs/stable/,目前官方已经是3.x,但yarn机制没有太大变化 一.简介 在Hadoop1.0中,没有yarn,所有的任务调度 ...
- 在页面跳转的时候,在跳转后的页面中使用js 获取到 页面跳转的url中携带的参数。
common.js代码 //获取URL中的参数..等等function getQueryString(name){var reg = new RegExp("(^|&)"+ ...
- python如何将自己写的代码打包供他人使用
背景: 利用setuptools来实现,所以先安装setuptools,其实Python2.7.9及之后的版本都自带安装setuptools了,无需在另外安装 如果没有安装setuptools的直接下 ...
- Multisim 中的一些快捷键
1.镜像 Alt + Y 2.左转90° Ctrl + L 3.右转90° Ctrl + R
- Go同步等待组/互斥锁/读写锁
1. 临界资源 package main import ( "fmt" "time" ) func main() { /* 临界资源: */ a := 1 go ...
- Python开发五子棋游戏【新手必学】
五子棋源码,原创代码,仅供 python 开源项目学习.目前电脑走法笨笨的,下一期版本会提高电脑算法ps:另外很多人在学习Python的过程中,往往因为遇问题解决不了或者没好的教程从而导致自己放弃,为 ...