在line.split('+')[ - 1]中,方括号中的-1表示在Python中

use*_*453 10 python syntax

我们假设我们有这个代码:

name = line.split('+')[-1]
Run Code Online (Sandbox Code Playgroud)

-1做什么?我已经在各种代码中看到它,但不知道它的作用是什么?如果有一个[0]或一个,那会有什么不同[1]

iCo*_*dez 18

你给出的代码行基本上做了三件事:

  1. 它需要字符串line并将其拆分+使用str.split.这将返回一个子串列表:

    >>> line = 'a+b+c+d'
    >>> line.split('+')
    ['a', 'b', 'c', 'd']
    >>>
    
    Run Code Online (Sandbox Code Playgroud)
  2. [-1]随后的索引,列出的位置-1.这样做将返回最后一项:

    >>> ['a', 'b', 'c', 'd'][-1]
    'd'
    >>>
    
    Run Code Online (Sandbox Code Playgroud)
  3. 它接受此项并将其指定为变量的值name.

以下是上述概念的更完整演示:

>>> line = 'a+b+c+d'
>>> line.split('+')
['a', 'b', 'c', 'd']
>>> lst = line.split('+')
>>> lst[-1]
'd'
>>> lst[0]
'a'
>>> lst[1]
'b'
>>> lst[2]
'c'
>>> lst[3]
'd'
>>>
Run Code Online (Sandbox Code Playgroud)