Python字符串切片语法和操作【详细讲解】

切片含义:切片是指对操作的对象截取其中一部分的操作。

字符串切片和下标一样重要,要认真学习。在Python中不仅字符串支持切片操作,后面即将学习的列表、元组同样支持切片操作。

抛出问题:

str1 = 'python'
# 得到整个字符串数据
print(str1)

# 下标得到的是下标为某个数字的数据
print(str1[3])

# 如果想得到 thon  这4个数据怎么办? -----》 用到字符串切片知识

一、语法:

序列名[开始位置下:结束位置下标:步长]

注意:

  1. 不包含结束位置下标对应的数据[左闭右开),正负整数均可
  2. 步长是选区间隔,正负整数均可,默认步长为1

二、代码体验

不同情况下操作切片:

# 语法: 序列名[开始位置:结束位置:步长]
str1 = '0123456789'
print(str1[2:5:1])  # 结果:234
# 从下标2开始对应数字是2,到下标是5结束对应数字是5,等得到2345,但是左闭右开的,5这个数字去不到,,最后得到结果是234

print(str1[2:5:2])  # 结果:24
# 从下标2开始对应数字是2,到下标是5结束对应数字是5,在这基础之上步长间隔是2,那就是2开始位置的数据是要的加上2,选取出来的就是4,又不包含结束位置所以5取不到最后结果是24

print(str1[2:5])  # 结果:234   步长不写,步长默认为1
print(str1[:5])  # 结果:01234   开始位置不写,默认从0开始选取
print(str1[2:])  # 结果:23456789   结束位置不写,表示选取到最后
print(str1[:])  # 结果:0123456789   如果不写开始和结束,表示选取所有

# 负数测试
print(str1[::-1])  # 结果:9876543210   如果步长为负数,表示倒序选取
print(str1[-4:-1:])  # 结果:678 ----下标-1表示最后一个数据,依次向前类推

#  终极测试
print(str1[-4:-1:1])  # 结果:678
print(str1[-4:-1:-1])  # 不能选取出数据:从-4开始达到-1结束,选取方向为从左到右,但是步长-1选取方向为从右向左
#  总结: 如果选取方向(下标开始到结束的方向)和 步长的方向冲突,则无法选取数据

# 修改一下就可以选取出
print(str1[-1:-4:-1])  #  结果 987
# 开始位置-1选取到的数字是9,结束位置-4从数字9开始向左数,第-4个数字是6但不包含6,所以结果为987,方向为从右向左;而步长方向是从右向左,方向一致所以可以取到数据

执行结果如下图:

Python字符串切片语法和操作【详细讲解】_第1张图片

 

 

切片重点学习知识点是切片的语法以及以上对对切片做测试的代码,里面很多知识点希望大家认真理解多情况下切片操作。python基础教程从这里开始可能会稍微加大难度了,所以大家要更加的努力才行。

你可能感兴趣的:(python基础教程,python)