下图为
http://www.runoob.com/python3/python3-data-type.html
学习教程的例子,说明了Python字符串的截取规则:
变量[头下标:尾下标]
注意:实际Python字符串截取的规则为“前闭后开”
下面开始解读截取原理:
如上图所示,Python索引有两种方式,从左往右为从0开始逐一递增,从右往左为从-1开始逐一递减;
如上图所示,从左往右,0==>5索引依次对应的字母为:R,u,n,o,o,b
从右往左,-1==>-6索
引依次对应的字母为:b,o,o,n,u,R
先来几个简单的:
如上图所示:当我们print(str[0],str[1],str[2])时输出的是R,u,n,但实际在print(str[0,2])时却只有Ru,这是巧合吗?没有n?
答案是否定的,当我们print(str[2],str[3],str[4],str[5])时输出的是n,o,o,b,但实际在print(str[2,5])时却只有noo
同理再从右往左看,print(str[-6:-4])输出Ru,print(str[-4:-1])输出noo
所以:字符串[头下标,尾下标]是前闭后开的
来个复杂的:
其实也并不是很难,只需要牢牢地把下图的索引规则记住,并结合“前闭后开”就可以了
索引0和索引-6对应,索引-1和索引5对应,str[0:-1]和str[0:5]、str[-6:-1]是一个意思