TypeError: string indices must be integers

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'
>>> 

猜你喜欢

转载自blog.csdn.net/you23hai45/article/details/80388794