假設我們有這樣的代碼:在line.split( '+')[ - 1]什麼是-1在方括號表示在Python
name = line.split('+')[-1]
什麼是-1呢?我已經看到它在各種代碼,但不知道它在做什麼? 如果有[0]
或[1]
,會有什麼區別?
假設我們有這樣的代碼:在line.split( '+')[ - 1]什麼是-1在方括號表示在Python
name = line.split('+')[-1]
什麼是-1呢?我已經看到它在各種代碼,但不知道它在做什麼? 如果有[0]
或[1]
,會有什麼區別?
的代碼,你給我的線,基本上是做三件事情:
它採用串line
和使用str.split
拆分它+
的。這將返回字符串的列表:
>>> line = 'a+b+c+d'
>>> line.split('+')
['a', 'b', 'c', 'd']
>>>
的[-1]
然後索引,列出在-1
位置。這樣做將返回的最後一個項目:
>>> ['a', 'b', 'c', 'd'][-1]
'd'
>>>
它需要這個項目,並將其分配作爲變量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'
>>>
str.split
返回一個列表:
>>> '1+2+3'.split('+')
['1', '2', '3']
list[-1]
產生了最後一個項目(負指數從-1開始)
>>> '1+2+3'.split('+')[-1]
'3'
>>> '1+2+3'.split('+')[0] # the first item (Python index starts from 0)
'1'
>>> '1+2+3'.split('+')[1]
'2'
請參閱Lists
- Python tutorial(包含索引,切片)。
Split
將創建列表,然後從你得到使用Python中[-1]
負指標的最後一個元素是語法糖在訪問元素順序顛倒,從右到左,在-1
開始。所以-1
是最後一項,-2
是倒數第二項,依此類推 - 第一項應該是lst[-len(lst)]
。例如:
lst = [1, 2, 3]
lst[-1]
=> 3
lst[-2]
=> 2
lst[-3]
=> 1