当Python子串命令的起始值为负时会发生什么?

-4 投票
2 回答
526 浏览
提问于 2025-04-16 16:34

示例:

mystring = " ... some string ... "
mystring[-50:40]  # <--- what does this mean?

2 个回答

1

负索引一般来说会在负数索引的基础上加上一个隐含的len(这个对象)。无论是开始结束还是普通的索引,这个规则都是适用的。

举个例子:

some_object[10:-20]

这段代码的意思是:

some_object[10:len(some_object)-20]

原因在于:

some_object[-1]

这表示some_object中的最后一个项目。

7

在切片中,负数索引是从右边开始计算的。没错,连起始值也是这样。

>>> '12345'[-4:4]
'234'

撰写回答