Python中符合序列的有序序列都支持切片(slice),如:列表,字符,元祖
Python中切片的格式:[start : end : step]
Start:起始索引,从0开始,-1表示结束;End:结束索引;Step:步长
end-start=正数时,从左向右取值,=负数时反向取值
注意:切片结果不包含结束索引,即不包含最后一位,-1代表最后一个位置索引
了解更多python知识,0基础新手python在线学习就上智圭谷-书声琅琅教育旗下高端IT教育品牌,专注python语言领域
基本上,我们知道Python序列对象是索引号中可以引用的元素. 索引号的正数从0到左向右,或负数从-1到右到左.
Python允许对具有序列结构的数据使用切片操作. 请注意,在序列对象的索引位置返回元素,而切片操作返回与切片对象类型相同的对象的副本.
今天主要和大家一起讨论Python字符串的切片操作.
第一段:字符串的切片字符串' xxx '和Unicode字符串u'xxx '也可以视为一种列表,每个元素都是一个字符. 所以呢,字符串也可以在片上操作,但操作结果仍然是字符串. 许多编程语言为字符串提供了许多不同的剪切函数,但实际上是将字符串切片. Python对字符串没有剪切函数,只需切片即可,非常简单.
切片操作(slice )可以从字符串中获取子字符串(字符串的一部分). 使用方括号、开始偏移start、结束偏移end和可选的步骤对定义拼贴
切片是python极其有用且强大的功能.它使我们能够使用简单明了的语法来操作序列,包括字符串、列表、元组.切片简单来说就是从序列中切取咱们需要的值,并生成一个新的序列,理论上来说,只要表达式正确,我们可以通过切片切取序列中的任意值.
如果没有缺省的话,表达式应该包含三个参数以及两个冒号,三个参数的意义分别如下:
组合使用
只有一个冒号时默认step为1.当start_index的位置在end_index的左边时,表示从左往右取值;当start_index的位置在end_index的右边时,表示从右往左取值
特殊情况
连续切片操作
按照顺序进行切片即可
其他序列的切片
python常用切片操作
start:表示切片的开始索引位置(包括该位置),此参数也可以不指定,会默认为 0,也就是从序列的开头进行切片;
end:表示切片的结束索引位置(不包括该位置),如果不指定,则默认为序列的长度;
step:表示在切片过程中,隔几个存储位置(包含当前位置)取一次元素,也就是说,如果 step 的值大于1则在进行切片去序列元素时,会"跳跃式"的取元素.如果省略设置 step 的值,则最后一个冒号就可以省略.
"""
其中,第一个数字start表示切片开始位置,默认为0;
第二个数字end表示切片截止(但不包含)位置(默认为列表长度);
第三个数字step表示切片的步长(默认为1).
当start为0时可以省略,当end为列表长度时可以省略,
当step为1时可以省略,并且省略步长时可以同时省略最后一个冒号.
另外,当step为负整数时,表示反向切片,这时start应该比end的值要大才行.
print (aList[::]) # 返回包含原列表中所有元素的新列表
print (aList[::-1]) # 返回包含原列表中所有元素的逆序列表
aList[0:100] # 切片结束位置大于列表长度时,从列表尾部截断
aList[100:] # 切片开始位置大于列表长度时,返回空列表
print (aList)
关于数组切片的解析:
① [i]、[-1];
② [:-1]、[:n]、[n:]、[n:m]、[:];
③ [n: m: x]、[: : x]、[: : ]、[-1: : ]、[: -1:]、[: :-1]
(-1在此相当于len(A)-1,即从首项至下标为 (len(A)-1)-1 的元素)
(-1在此相当于len(A)-1,即从下标为 len(A)-1 的元素至最后一项元素,实际上就是最后一项元素)
n和m都缺省时,范围为整个数组,元素的选择取决于步长
x为-1时,取步长为1的倒序
a表示取第一维的下标为a的元素,b表示取第二维的下标为b的元素
此外,更高维数组的切片以此类推.
以上就是土嘎嘎小编为大家整理的Python函数切片相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!