Python:我怎样才能得到索引的负索引(str,beg = 0,end = len(string)),即从end开始计算

时间:2017-04-11 09:42:30

标签: python string list indexing

对于以下列表和字符串:

listb = ['b','c','d','e']
listb.index('d')
... 2

listb.index('e')
... 3

word1 = 'hellomatico'

word1.index('t')
... 7

所有指数均来自左边,没有来自右边(负面)。负指数分别为-2,-1,-4。 如何强制list.index(...)或string.index(...)给我一个负的索引输出?

1 个答案:

答案 0 :(得分:1)

你所要做的就是从.index结果值中减去字符串或列表的长度。

>>> word1.index('t')-(len(word1))
-4
>>> word1[-4]
't'

您也可以为它创建一个方法。

negative_index(word, char):
    return word.index(char) - len(word)

适用于字符串和列表。

然后只需调用它:

index = negative_index(word1, 't')