Python-字符串的切片以及步长负数怎么理解?
一、字符串的切片的概念
用来获取字符串中的一个子字符串。
二、字符串切片的语法
语法:my_str[i1:i2:步长]
说明:i1:i2指的是索引的start、end,左闭右开。
索引也分为正索引和负索引,因为涉及执行效率的问题,我们会根据实际情况取使用正索引还是负索引,比如想要获取最后一部分的字符串,那么肯定是使用负索引效率会高一些。
索引只是用来找到字符的位置,截取取值范围。
①起始值start不写,表示从无穷开始(如果步长为正数,则start为负无穷;如果步长为负数,则start为正无穷);
结束值end不写,表示到无穷(如果步长为正数,则end为正无穷;如果步长为负数,则end为负无穷);两个都不写,表示取全部。
②步长:步长n,每n个取顺序的第一个,如果是负数的话,则表示逆序取。如my_str[::-1],表示的是获取反向字符串。如果步长没写,就默认指定步长为1。
三、举例说明
# 原字符串
my_str = '0123456789'
# 截取字符串的全部字符
str1 = my_str[:] # str1 = 0123456789
print('str1 =', str1)
# 获取与原字符串顺序相反的字符串
str2 = my_str[::-1] # str2 = 9876543210
print('str2 =', str2)
# 截取第1位到第3位的字符
str3 = my_str