博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 中的[::-1]和[:-1]
阅读量:4291 次
发布时间:2019-05-27

本文共 564 字,大约阅读时间需要 1 分钟。

[::-1]

for value in rang(10)涉及的数字倒序输出:

for value in rang(10)[::-1]涉及的数字倒序输出:

详解

这个是python的slice notation的特殊用法。

a = [0,1,2,3,4,5,6,7,8,9]

b = a[i:j] 表示复制a[i]到a[j-1],以生成新的list对象
b = a[1:3] 那么,b的内容是 [1,2]
当i缺省时,默认为0,即 a[:3]相当于 a[0:3]
当j缺省时,默认为len(alist), 即a[1:]相当于a[1:10]
当i,j都缺省时,a[:]就相当于完整复制一份a了

b = a[i:j:s]这种格式呢,i,j与上面的一样,但s表示步进,缺省为1.

所以a[i:j:1]相当于a[i:j]
当s<0时,i缺省时,默认为-1. j缺省时,默认为-len(a)-1
所以a[::-1]相当于 a[-1:-len(a)-1:-1],也就是从最后一个元素到第一个元素复制一遍。所以你看到一个倒序的东东。

如果还不理解,把我说的东西测试一遍,你就明白了

转载:

[:-1]:去除了这行文本的最后一个字符(换行符)后剩下的部分,例如:

>>> a=[1,2,3,4]>>> b=a[:-1]>>> b[1, 2, 3]
你可能感兴趣的文章
Java互联网架构-负载均衡原理与实现方案
查看>>
实用SQL函数集合(五)《格式化函数》
查看>>
jvm-运行时内存结构
查看>>
Java开发秒杀大型互联网企业高并发限流特技
查看>>
Eclipse+Maven+Spring+CXF 构建webservice 服务
查看>>
Java Collections.addAll() 与 ArrayList.addAll() 的区别
查看>>
消息中间件 kafka+zookeeper 集群部署、测试与应用(1)
查看>>
Eclipse 自定义本地maven仓库位置
查看>>
centos7-codis安装部署,解决redis分布式的方案
查看>>
java基于redis客户端redisson的RPC远程服务调用
查看>>
JVM内存、堆模型、垃圾回收器总结
查看>>
sql(join中on与where区别) / NVL函数 / oracle存储过程中is和as区别 / JAVA调用数据库存储过程
查看>>
前端开发:一款近年非常受欢迎、简单的WEB弹出层组件(layer)
查看>>
Java中sleep方法和wait方法的区别?
查看>>
Eclipse 下载 开源项目 maven依赖丢失和 Deployment Assembly 丢失
查看>>
MyBatis中对List<Object> 对象List的批处理插入操作
查看>>
mybatis使用foreach批次插入,解决sequence只查询一次的问题(在此,我只看union all 部分)
查看>>
有关分布式 MySQL 数据库中间件 MySQLDA,一文为你深入介绍~
查看>>
小马分享(如何使用Spring实现读写分离(MySQL实现主从复制))
查看>>
使用maven profile实现多环境配置
查看>>