Python中列表索引 A[ : 2 ]與A[ : , 2]的區(qū)別說(shuō)明
列表索引 A[ : 2 ]與A[ : , 2]區(qū)別
Python內(nèi)置的一種數(shù)據(jù)類(lèi)型是列表:list 。list是一種有序的集合,也就是說(shuō),list中的元素是按照順序排列的。可以隨時(shí)添加和刪除其中的元素。它的位置,或索引,第一個(gè)索引是0,第二個(gè)索引是1,依此類(lèi)推。
創(chuàng)建一個(gè)列表
構(gòu)造list非常簡(jiǎn)單,按照上面的代碼,直接用 [ ]把list的所有元素都括起來(lái),就是一個(gè)list對(duì)象。通常,我們會(huì)把list賦值給一個(gè)變量,這樣,就可以通過(guò)變量來(lái)引用list:代碼如下:
list1 = ['1937', 'chemistry', 1997, 2000]; list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", "c", "d"];
注:列表中的數(shù)據(jù)項(xiàng)可以是不同的數(shù)據(jù)類(lèi)型
一個(gè)元素也沒(méi)有的list,就是空l(shuí)ist:
empty_list = []
訪問(wèn)列表中的值
使用下標(biāo)索引來(lái)訪問(wèn)列表中的值,同樣你也可以使用方括號(hào)的形式截取字符,如下所示:
代碼如下:
list1 = ['physics', 'chemistry', 1997, 2000] list2 = [1, 2, 3, 4, 5, 6, 7 ] ? print ("list1[0]: ", list1[0]) print ("list2[1:5]: ", list2[1:5])
輸出結(jié)果:
>>> list1[0]: physics
>>> list2[1:5]: [2, 3, 4, 5]
注意:索引超出了范圍會(huì)報(bào)錯(cuò)
A[ : 2 ]與A[ : , 2]的區(qū)別
代碼如下:
import numpy as np A=[[ 1, ?2, ?3, ?4, ?5], ? ?[ 6, ?7, ?8, ?9, 10], ? ?[11, 12, 13, 14, 15], ? ?[16, 17, 18, 19, 20]] ? A = np.array(A) print("A[: 2]:", A[: 2]) print("A[:,2]:", A[:,2])
輸出結(jié)果:
>>> A[: 2]: [[ 1 2 3 4 5]
[ 6 7 8 9 10]]
>>> A[:,2]: [ 3 8 13 18]
- A[ : 2]:表示索引 0至1行;
- A[ :, 2]:表示所有行的第3列。
python中[::]的含義
:是取值范圍,‘,’用來(lái)分割維度
需要注意的是list定義的二維數(shù)組不能用此方法取數(shù)值
最好使用nump定義的array類(lèi)型
[:-1]
b = [1,2,3,4,5,6] print(b[:-1]) out:[1, 2, 3, 4, 5]
簡(jiǎn)而言之就是裁減掉最后一位
[::-1]
print(b[::-1]) out: [6, 5, 4, 3, 2, 1]
倒序輸出
如果是[::2]的話(huà),則是以步長(zhǎng)2一次取數(shù)據(jù)
因此這個(gè)語(yǔ)句的意思就是以多少步長(zhǎng)取數(shù)據(jù),-1就是倒序取數(shù)
[:,]
import numpy as np b = np.array([[1,2,3,4,5],[6,7,8,9,10]]) print(b[:,0]) out:[1 6]
第一個(gè):,代表第一個(gè)維度,第二個(gè)0表示取第二維的所有0位數(shù)據(jù)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python 聊聊socket中的listen()參數(shù)(數(shù)字)到底代表什么
本篇文章對(duì)Python 聊聊socket中的listen()參數(shù)(數(shù)字)到底代表什么,進(jìn)行了很好的講解,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-04-04Python采用socket模擬TCP通訊的實(shí)現(xiàn)方法
這篇文章主要介紹了Python采用socket模擬TCP通訊的實(shí)現(xiàn)方法,程序分為T(mén)CP的server端與client端兩部分,分別對(duì)這兩部分進(jìn)行了較為深入的分析,需要的朋友可以參考下2014-11-11python opencv鼠標(biāo)交互操作的實(shí)用指南
最近的工作經(jīng)常需要對(duì)圖像進(jìn)行操作,也需要用鼠標(biāo)對(duì)圖像進(jìn)行各種操作,所以下面這篇文章主要給大家介紹了關(guān)于python opencv鼠標(biāo)交互操作的相關(guān)資料,需要的朋友可以參考下2021-10-10PyQt5實(shí)現(xiàn)進(jìn)度條與定時(shí)器及子線(xiàn)程同步關(guān)聯(lián)
這篇文章主要為大家詳細(xì)介紹了PyQt5如何實(shí)現(xiàn)進(jìn)度條與定時(shí)器及子線(xiàn)程的同步關(guān)聯(lián),文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-01-01Python使用dis模塊把Python反編譯為字節(jié)碼的用法詳解
通常來(lái)說(shuō)Python的性能或代碼質(zhì)量的評(píng)估可以通過(guò)dis模塊獲取到對(duì)應(yīng)的字節(jié)碼指令來(lái)進(jìn)行評(píng)估,因而這里我們就來(lái)看一下Python使用dis模塊把Python反編譯為字節(jié)碼的用法詳解:2016-06-06python實(shí)現(xiàn)兩個(gè)dict合并與計(jì)算操作示例
這篇文章主要介紹了python實(shí)現(xiàn)兩個(gè)dict合并與計(jì)算操作,結(jié)合具體實(shí)例形式分析了Python使用collections.Counter進(jìn)行字典dict合并與遍歷輸出相關(guān)操作技巧,需要的朋友可以參考下2019-07-07