使用负步长的Python字符串切片

2024-09-27 23:15:23 发布

您现在位置:Python中文网/ 问答频道 /正文

我有以下计划:

str = 'abcd'
l = len(str)

str2 = str[l-1:0:-1] 

print(str2)

str2 = str[l-1:-1:-1] 

print(str2)

为什么第一个print()输出dcb,第二个print()输出空字符串?为什么第二个print()不输出dcba


Tags: 字符串len计划printabcdstrstr2dcb
2条回答

在语句str[l-1:0:-1]中,最后一个字符到第0个字符,不包括第0个元素。这就是为什么你会得到dcb

在语句str2 = str[l-1:-1:-1]中,您将从第三个索引转到第三个索引,因此字符串为空

如果您需要所有元素str2 = str[l-1::-1]将给出dcba

第一种情况,l=4。将abcd3切片到0,结果是dcb。第二种情况是从3切到-1-1是列表/字符串的最后一个元素。因此,您正在从3滑动到3,结果什么也没有

相关问题 更多 >

    热门问题