程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式師世界 >> 編程語言 >  >> 更多編程語言 >> Python

Python中[-1]、[-1]、[-1]、[n-1]、[,,0]、[…,0]、[…,-1] 的理解

編輯:Python

在python中會出現[-1]、[:-1]、[::-1]、[n::-1]、[:,:,0]、[…,0]、[…,::-1],他們分別是什麼意思呢,這裡就來詳盡的說一下:

下面的a = [1,2,3,4,5]

[-1]: 列表最後一項

[:-1]: 從第一項到最後一項
原型是[n : m],前閉後開,索引從零開始,第一個索引指定可以取到,即n可以取到,後一個索引不可取到,即m不可取到。

[::-1]: 代表從全列表倒序取
原型是[n : m : k],代表的是從那一段開始取,隔幾個取一次。
其中,n代表的是取值開始的索引,因此該索引必將被取到,m代表的是取值結束的索引,和上面一樣,該值不能被取到。
k代表的是間隔,間隔可正可負,正值代表正向順序跳取,負值代表反向跳取。
需要注意的是,當k為正的時候起始索引應該小於結束索引;當k為負的時候起始索引應該大於結束索引,因為在倒序來看,首先是索引值大的被取到,然後才是索引值小的。

[n::-1]: 同上所述,從索引n開始倒序取值:

[:,:,0]: 因為有了逗號,所以這個方法就和前面的有所不同了。它是對多維數據的一種處理方式,代表了前兩維全選,取其中的所有0號索引。
原型是[n:m, j:k, g:h],當然維度可以更多,在圖片處理中,一般用到的就是三維的。看a數組的模樣就可以看出來,nm管最外層列表的取值,從第n個元素到第m個元素,前閉後開;jk管nm取中的元素的列表中的元素的選取,也是前閉後開,gh管jk取中元素的列表中的元素的選取,任意一對都可以是個整數用來直接取某個索引,這和前兩個很像。
其實就是嵌套列表的取值方法。

[…,0]: 代表了取最裡邊一層的所有第0號元素,…代表了對:,:,:,的省略。注意只能進行一次省略,不能是[… , …],全省略那不就是 a 嗎。

同樣可以再使用:來分割

放在後面視為其中的所有值,這和[2:]很像,一個是不寫代表全部,一個是用…代表全部。

[…,::-1]: 是對最內層的列表進行逆序取值:

當然這個挑取的取法也可以放在其他位置,比如我們將他放在中間a[: , ::-1 , :],他就會把所有的第二層進行顛倒:

至此講解完畢,請點贊。(尊重創作,禁止轉發)


  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式師世界 All Rights Reserved