【Python • 字符串】巧用python字符串切片

简介: 【Python • 字符串】巧用python字符串切片



前言

在python中字符串切片是个非常方便的方法来截取字符串,最初了解到字符串切片的时候就发现其相当方便,要比java的substring要舒服的多,这使得更加吸引我了。在我的使用过程中一直很顺利,直到遇见了-1,才发现这玩意儿不简单,因此在这里总结一下python字符串切片的常用用法。


字符串切片常用用法

python字符串切片语法如下

理解一个字符串

现在定义一个字符串

s = "abcd.efgh"

你可以这么理解这个字符串

下标 0 1 2 3 4 5 6 7 8
字符串 a b c d . e f g h

首先,可以将字符串理解为一个字符组成的数组,因此我们是可以通过数组那种用法来获取某个字符,例如想要获取字符b,只需要

s[1]

即可得到字符b,取其中任何一个字符方法类同。

逆向下标的字符串

字符串下标是支持逆向的,逆向的下标如下,

下标 -9 -8 -7 -6 -5 -4 -3 -2 -1
字符串 a b c d . e f g h

可以看出,逆行下标是从字符串末端开始标号的,并且从-1开始

因此想要取到字符b,也可以

s[-8]

并且二者是 等价的

字符串切片

字符串切片就和它的名字一样,就是把字符串裁切出来,也就是拆分字符串。

这里将考虑几种常见的字符串拆分处理方法:

截取下标a到b的字符串

这里a和b代表的都是整数,是编程时候代码中的整数,不管是数值还是表达式,最终你得是整数。

例如要取下标从2到5的字符串,那就是

s[2:6]

效果如下

取下标a以后的所有字符串

例如取下标2以后的所有内容,那么就是

s[2:]

效果如下

取下标a以前的所有字符串

例如要取下标为5以前的所有字符串,那么就是

s[:6]

效果如下

间隔n个字符取字符串

例如要每隔1个字符取字符串,那么就是

s[::2]

效果如下

字符串逆序输出

s[-1::-1]

效果如下

### 除了最后一个字符的字符串

s[:-1]

效果如下

从下标a的字符开始逆序取字符串

例如,从下标2开始逆置前面的字符串就是

s[2::-1]

效果如下

逆序输出从b到a的字符串

例如逆序输出2到5的字符串

s[5:2:-1]

效果如下

逆序间隔一个字符串输出

s[::-2]

效果如下


总结

本期关于字符串切片的内容就到这里了,以上内容已经几乎囊括了字符串切片相关的大部分内容和一些常用的场景,如果以后遇到新的问题还会继续更新。

目录
相关文章
|
1月前
|
存储 JavaScript Java
(Python基础)新时代语言!一起学习Python吧!(四):dict字典和set类型;切片类型、列表生成式;map和reduce迭代器;filter过滤函数、sorted排序函数;lambda函数
dict字典 Python内置了字典:dict的支持,dict全称dictionary,在其他语言中也称为map,使用键-值(key-value)存储,具有极快的查找速度。 我们可以通过声明JS对象一样的方式声明dict
150 1
|
1月前
|
Java 数据处理 索引
(numpy)Python做数据处理必备框架!(二):ndarray切片的使用与运算;常见的ndarray函数:平方根、正余弦、自然对数、指数、幂等运算;统计函数:方差、均值、极差;比较函数...
ndarray切片 索引从0开始 索引/切片类型 描述/用法 基本索引 通过整数索引直接访问元素。 行/列切片 使用冒号:切片语法选择行或列的子集 连续切片 从起始索引到结束索引按步长切片 使用slice函数 通过slice(start,stop,strp)定义切片规则 布尔索引 通过布尔条件筛选满足条件的元素。支持逻辑运算符 &、|。
135 0
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
297 100
|
2月前
|
开发者 Python
Python中的f-string:高效字符串格式化的利器
Python中的f-string:高效字符串格式化的利器
409 99
|
2月前
|
Python
Python中的f-string:更优雅的字符串格式化
Python中的f-string:更优雅的字符串格式化
|
2月前
|
开发者 Python
Python f-strings:更优雅的字符串格式化技巧
Python f-strings:更优雅的字符串格式化技巧
|
2月前
|
开发者 Python
Python f-string:高效字符串格式化的艺术
Python f-string:高效字符串格式化的艺术
|
2月前
|
Python
使用Python f-strings实现更优雅的字符串格式化
使用Python f-strings实现更优雅的字符串格式化
|
1月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
112 1
|
1月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
127 4