我有一个可变长度的字符串,我知道索引位置是25.因为它的长度是变量(> = 25),我需要一种方法来定位相同位置的负索引,以便更容易地进行数据操作。
你知道如何做到这一点吗?
答案 0 :(得分:2)
我不确定这是否是你所追求的,但是如果你有一个字符串的索引,那么'负'索引只是字符串长度减去索引的负数:
In [1]: import string
In [2]: s = string.ascii_letters
In [3]: s
Out[3]: 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'
In [4]: s[25]
Out[4]: 'z'
In [5]: -(len(s)-25)
Out[5]: -27
In [6]: s[-(len(s)-25)]
Out[6]: 'z'
或使用评论中的示例:
In [7]: s = range(1, 7)
In [8]: s[4]
Out[8]: 5
In [9]: neg = -(len(s)-4) # Here you would replace 4 with your index
In [10]: s[neg]
Out[10]: 5
答案 1 :(得分:1)
让我们使用具有以下值的'list': '1','2','3','4','5','6'
获取任何值的负指数的步骤:
步骤1。获取值的'normal_index'。例如,值'4'的正常索引是3。
第二步。获取“列表”的“计数”。在我们的示例中,'list_count'是5。
步骤3。获取请求值的负索引。 negative_index =(normal_index - list_count) - 1.哪个是-3。