導航:首頁 > 編程語言 > 修改下標為4的數據python

修改下標為4的數據python

發布時間:2024-12-12 22:48:12

python 列表如何獲得一個指定元素所在的下標

print(your_list.index('your_item')) ###your_list為列表名稱 your_item為需要修該的數據。

print [i for i, x in enumerate(your_list) if x == 'your_item']

your_list為待查list,your_item為具體要查的元素,列印出一個包含所有要查元素下標的列表。

② python中'下標'和'索引'的區別

下標就是索引啊,比如a = [1,2,3,4,5],共5個元素。a[0]就等於1,a[4]就等於5,這里0和4就是列表a某一項的索引或者說下標。a[5]就會越界,python和c一樣,都是從0開始數的,下標位置或者索引位置只能從0~4。

③ python數組下標怎麼獲取值並輸出

通過python數組下標獲取值的方法:

使用數組的下標法(a[下標])的方式可以獲取到數組下標對應的值。將這個值賦給一個變數,輸出這個變數就能輸出這個值了

完整代碼如下:

執行結果如下:

④ python 列表獲取下標時有個值不在列表中也被索引到了,哪路大神能幫我看看

列表下標是基於0的,第一個元素的下標是0,第二個的是1,第三個是2,以此類推。

對於列表nums=[4,5,6,7,0,1,2],下標的范圍是從0到6,有:

nums[0]=4,

nums[1]=5,

nums[2]=6,

nums[3]=7,

nums[4]=0,

nums[5]=1,

nums[6]=2。

nums[3]是等於7啊。而nums[8]之所以錯了,是因為下標8已越界了。

如果是想檢查元素7、8是否位於列表中,應該用7 in nums、8 in nums,如下所示:

#7位於列表,而8不在列表,因此,輸出:True False

print(7 in nums,8 in nums)

下面是驗證:

nums=[4,5,6,7,0,1,2]

print(nums[3])

print(7 in nums,8 in nums)

⑤ Numpy的各種下標操作

目錄

本文所使用的Numpy版本為: Version: 1.20.3 。基於Python和C++開發的Numpy一般被認為是Python中最好的Matlab替代品,其中最常見的就是各種Numpy矩陣類型的運算。對於矩陣的運算而言,取對軸和元素是至關重要的,這里我們來看看一些常見的Numpy下標取法和標記。

這里我們定義一個4*4的矩陣用於取下標,為了方便理解,這個矩陣中所有的元素都是不一樣的:

比如我們想取第一行的所有元素,那麼就是x[0],如果想取第一行的第一列的元素,那麼就是x[0][0],而在numpy中為了簡化,可以講x[0][0]寫成x[0,0]的形式:

在上一個章節中我們提到的取單個元素x[0,0]的方法,其實本質上等同於x[(0,0)],也就是一個tuple的格式,但是如果把這里的tuple格式換成list,所表示的含義和得到的結果是完全不一樣的:

這里list格式的id,代表的意思是分別取第二行和第二行的內容,再放到一個完整的矩陣中。如果id設置為[1,2]的話,就是分別取第二行和第三行,而不是取第二行的第二個元素。如果需要取第二行的第二列的元素,那麼還是需要用tuple的格式來取下標。有一個比較有意思的點是,如果把剛才的下標重復輸入兩次,也就是x[[1,2],[1,2]]的話,所表示的含義是分別取x[1][1]和x[2][2],再放到同一個矩陣中,也是一種比較常用的分離式取下標的方法。

在Numpy的下標中,冒號和後置逗號同時出現,表示軸向全取,比如x[0,:]表示取x的第一行的所有數據,x[:,0]表示取第一列的所有數據:

雖然上文我們提到,如果下標被定義成一個list格式的話,就表示分別取。但是目前Numpy的實現中還有這樣的一個遺留問題,就是使用多維的list格式取下標,會自動將最外層轉化成tuple的格式,採用tuple的取法。雖然計算時會給出告警,但是目前來說也需要引起一定的注意。

在Numpy中冒號不與後置逗號同時出現時,表示的含義是從冒號前的元素取值到冒號後的元素,比如x[0:3]所表示的元素是[x[0],x[1],x[2]]。如果是兩個冒號連用中間沒有逗號的話,比如x[0:3:2],表示的是每隔2個元素取一個,最後得到的應該是[x[0],x[2]]。還有一種非常常見的操作是取[::-1]這樣的下標,所表示的含義就是對當前軸進行倒序。

雖然在Numpy中有broadcast和expand_dim之類的函數可以對矩陣進行擴維或者是廣播,但是更方便的操作是對需要擴展的維度取一個None的下標,比如要把一個(4,4)大小的矩陣擴展成(1,4,4),那麼就對下標取[None,:]或者[None,:,:]即可。而如果需要把(4,4)變成(4,1,4),那就需要把None換個位置為[:,None,:]就可以實現:

在高維矩陣中,因為沒有了行和列這樣的概念,因此需要從軸上去理解相關操作,我們先定義一個簡單的三維張量:

常規的操作其實都跟前面章節中介紹二維張量一致,這里我們考慮一種比較特殊的場景。就是如果同樣用二維矩陣的取法去取,只是第一條軸每個元素取一個id,比如取第0條軸的[0,1]元素和第1條軸的[2,3]元素,那麼其實最簡單的方案就是在第一個下標的位置加上一個位置元素,這個位置元素用下標id的第一個軸的長度去定義即可:

這篇文章的主要內容是梳理在Numpy中經常用到的各種取下標的操作,包括但不限於取指定軸的所有元素、取指定位置的單個元素、取指定位置的多個元素、擴維以及取未顯式給定位置的多個元素等等。比較重要的是在Numpy中tuple的取法和list的取法是代表不一樣的含義,並且由於 歷史 原因,Numpy中存在一些list取法和numpy.array的取法表示不一致的地方,在本文中進行了總結。

本文首發鏈接為:https://www.cnblogs.com/dechinphy/p/numpy-id.html

作者ID:DechinPhy

更多原著文章請參考:https://www.cnblogs.com/dechinphy/

打賞專用鏈接:https://www.cnblogs.com/dechinphy/gallery/image/379634.html

騰訊雲專欄同步:https://cloud.tencent.com/developer/column/91958

閱讀全文

與修改下標為4的數據python相關的資料

熱點內容
智能排課演算法 瀏覽:840
普林斯頓演算法課視頻 瀏覽:847
編程里的霸哥是什麼意思 瀏覽:237
壓縮空氣銅管 瀏覽:176
帥哥程序員受歡迎么 瀏覽:616
rmedf調度演算法 瀏覽:870
iso解壓縮後gho消失 瀏覽:906
51單片機怎麼設置多組鬧鍾 瀏覽:980
java顯示html 瀏覽:439
做底圖用什麼app 瀏覽:710
吉林女程序員 瀏覽:580
和平精英怎麼上一個伺服器 瀏覽:230
android關閉音樂 瀏覽:212
怎麼把隱藏的app釋放 瀏覽:459
斐雪派克壓縮機 瀏覽:999
學過51學習其它單片機快嗎 瀏覽:8
php微信授權登陸 瀏覽:874
php明天時間戳 瀏覽:945
python基礎教程日期 瀏覽:338
udp用什麼伺服器好 瀏覽:262