说明:

字符串[开始索引:结束索引:步长]

开始索引:从指定位置开始截取;

结束索引:从指定位置结束截取,但不包含该位置的字符。

步长:不指定时步长为1;

1)当步长为正数时候,那么切片是从左到右进行取值(只是代表取值方向)。

2)当步长为负数时候,那么切片是从右到左进行取值(只是代表取值方向)。

3)不管开始索引或者结束索引是正数还是负数,读取方向始终都是从左到右进行取值(无负数步长时候)。

5)当头索引为负数时,则是指从字符串的尾部开始计数,最末尾的字符记为-1,以此类推,因此此时应该注意尾索引的值,尾索引同样可以为负数,如果尾索引的值指明的字符串位置小于或等于头索引,此时返回的就是空字符串。

6)当头索引为正数时,则是指从字符串的头部开始计数,最前面的字符记为0,以此类推,因此此时应该注意尾索引的值,尾索引同样可以为正数,如果尾索引的值指明的字符串位置小于或等于头索引,此时返回的就是空字符串。

7)切片取左不取右

1.字符串切片技巧

my_hobby = "Never stop learning!"
print(my_hobby[-1:-21:-1])    
解释:
1.当你的my_hobby[-1:-21] 不加步长默认是1,那么-1就是取!;而-21就是取N,因为默认步长是1从左往右读取的,所以取到的就是空字符,因为我们肯定是-21先读取然后再读取-1,现在是反了,所以是空的,也就验证了5)中的最后一句红色字体。-21小于-1
2.当你的my_hobby[-1:-21:-1]加了步长-1,那么-1就是取!;而-21就是取N,因为步长-1是从右往左读取的,所以取到的就是-1到-21也就是从!到N,也就是!gninrael pots raveN
print(my_hobby[4:0:-1])
解释:
1.当你的my_hobby[4:0] 不加步长默认是1,那么4就是取r;而0就是取e,因为默认步长是1从左往右读取的,所以取到的就是空字符,因为我们肯定是0先读取然后再读取4,现在是反了,所以是空的,也就验证了6)中的最后一句红色字体。0小于4
2.当你的my_hobby[4:0:-1]加了步长-1,那么4就是取r;而0就是取e,因为步长-1是从右往左读取的,所以取到的就是4到0也就是从r到e,也就是reve

python 切片技巧的更多相关文章

  1. python切片技巧

    写一个程序,打印数字1到100,3的倍数打印“Fizz”来替换这个数,5的倍数打印“Buzz”,对于既是3的倍数又是5的倍数的数字打印“FizzBuzz” for x in range(101): p ...

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

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

  3. #1 Python灵活技巧

    前言 Python基础系列博文已顺利结束,从这一篇开始将进入探索更加高级的Python用法,Python进阶系列文章将包含面向对象.网络编程.GUI编程.线程和进程.连接数据库等.不过在进阶之前,先来 ...

  4. 流畅的Python——切片

    2.4 切片 在 Python 里,像列表(list).元组(tuple)和字符串(str)这类序列类型都支持切片操作,但是实际上切片操作比人们所想象的要强大很多. 在我个人的使用经历来看,在算法实践 ...

  5. Python 实用技巧

    模块相关 导入模块时,可以通过模块的 __file__ 属性查看模块所在磁盘的路径位置,参考:关于Python包和模块的10个知识清单 Pip 安装Pip 方法一: sudo apt-get purg ...

  6. Python爬虫技巧

    Python爬虫技巧一之设置ADSL拨号服务器代理 reference: https://zhuanlan.zhihu.com/p/25286144 爬取数据时,是不是只能每个网站每个网站的分析,有没 ...

  7. 一些你需要知道的Python代码技巧

    被人工智能捧红的 Python 已是一种发展完善且非常多样化的语言,其中肯定有一些你尚未发现的功能.本文或许能够让你学到一些新技巧.   Python 是世界上最流行.热门的编程语言之一,原因很多,比 ...

  8. Python切片(入门7)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6407977.html 本文出自:[Edwin博客园] Python切片 1. 对list进行切片 L = r ...

  9. 掌握这个Python小技巧,轻松构建cytoscape导入文件

    今天小编和大家分享如何借助Python脚本轻松构建cytoscape导入文件.Cytoscape是一个非常适合展示各种相互作用关系的可视化软件. 具体来说就是可以用于蛋白互作网络的展示,miRNA与蛋 ...

随机推荐

  1. MVC5+EF6 入门完整教程3 :EF完整开发流程

    https://www.cnblogs.com/miro/p/4053473.html 学完本篇文章,你将会掌握基于EF数据模型的完整开发流程. 本次将会完成EF数据模型的搭建和使用. 基于这个模型, ...

  2. vs2015制作一个超级简单的MVC项目

    使用vs2015制作一个超级简单的MVC项目   本文链接:https://blog.csdn.net/qq_40919762/article/details/100705314 直奔主题一,创建一个 ...

  3. 图的dfs遍历模板(邻接表和邻接矩阵存储)

    我们做算法题的目的是解决问题,完成任务,而不是创造算法,解题的过程是利用算法的过程而不是创造算法的过程,我们不能不能陷入这样的认识误区.而想要快速高效的利用算法解决算法题,积累算法模板就很重要,利用模 ...

  4. 题解【洛谷P2863】 [USACO06JAN]牛的舞会The Cow Prom

    题面 题解 \(Tarjan\)板子题. 统计出大小大于\(1\)的强连通分量数量输出即可. 代码 #include <iostream> #include <cstdio> ...

  5. 题解【洛谷P5483】[JLOI2011]小A的烦恼

    我们可以灵活运用\(C++\)的语法来解决此题. 解释一下代码中会出现的语法: \(string::iterator\ it\)表示定义了一个\(string\)类型的迭代器\(it\),\(^*it ...

  6. 一起了解 .Net Foundation 项目 No.3

    .Net 基金会中包含有很多优秀的项目,今天就和笔者一起了解一下其中的一些优秀作品吧. 中文介绍 中文介绍内容翻译自英文介绍,主要采用意译.如与原文存在出入,请以原文为准. AutoMapper Au ...

  7. MyBatis(2)——增删改查

    增删改查: 1.在实体类的映射文件中增加insert.update.delete标签与数据库语句,例如 <!-- 会去获取到对应的实体类的getter方法 --> <insert i ...

  8. PyCharm中的django项目的引入

    1.从github或者从本地的文件打开项目 2.项目引入后,python manage.py runserver 8080启动 1.启动的时候有错误,看看要引入的模块错误,然后把模块引入 D:\.St ...

  9. 第一个vi

    选择——VI 在前面板选择波形图表 在程序框图中选择while循环,框住波形图 在编程-数值中选择随机数,连接随机数与波形图 在编程-定时子选项卡中选择--等待下一个整数倍,在数值中选择常量选项,数值 ...

  10. SQL通过Datatable更新数据库表内容

    SQL通过Datatable更新数据库表内容   //要注意的一点是在Select语句中要选择的列中必须包含主键的列,此外不支持多表连接查询 DataTable dt = new DataTable( ...