1、错误描述
>>> print(st[-1,-6]); Traceback (most recent call last): File "<pyshell#13>", line 1, in <module> print(st[-1,-6]); TypeError: string indices must be integers >>> print(st[-1,-5]); Traceback (most recent call last): File "<pyshell#14>", line 1, in <module> print(st[-1,-5]); TypeError: string indices must be integers >>> print(st[0,-2]); Traceback (most recent call last): File "<pyshell#15>", line 1, in <module> print(st[0,-2]); TypeError: string indices must be integers >>> print(st[0,-1]); Traceback (most recent call last): File "<pyshell#16>", line 1, in <module> print(st[0,-1]); TypeError: string indices must be integers >>> print(st[-1:-6]); >>>
2、错误原因
st是字符串数据类型,可以使用“:”进行截取字符,但是上述实例中使用的是“,”,导致报错。但是,print(st[-1:-6])没有结果打印出来,这是为什么呢?
>>> st="89kkkklkjlky6dyush"; >>> st; '89kkkklkjlky6dyush' >>> print(st); 89kkkklkjlky6dyush
3、解决办法
调整截取字符的开始值和结束值
>>> print(st[-1:-6]); >>> st[-1:-6]; '' >>> st[-6:-1]; '6dyus' >>>