Python:list 和 array的對比以及轉換時的註意事項

来源:https://www.cnblogs.com/python960410445/archive/2019/11/08/11822845.html

前言 array,顧名思義,數組,就是存儲數字、處理數字的一種數據結構。今天在將list轉換為array時,遇到了一個問題,數據量比較大,剛開始怎麼都不知道問題出在哪裡。直到我用一個3 3的小數據測試時,才發現問題的本質所在。浪費了半天的時間,不過總算搞明白了。 學的不夠踏實,以此警戒所有的初學者: ...


前言

array,顧名思義,數組,就是存儲數字、處理數字的一種數據結構。今天在將list轉換為array時,遇到了一個問題,數據量比較大,剛開始怎麼都不知道問題出在哪裡。直到我用一個3*3的小數據測試時,才發現問題的本質所在。浪費了半天的時間,不過總算搞明白了。

學的不夠踏實,以此警戒所有的初學者:多思考,遇到問題時從小數據入手測試!

說正事兒

1、list 轉換為 array:

    • list里的變數全是數值型時,array里也全是數值型。

img

    • list里的變數既有數值型又有字元串類型時(即使只有一個元素是字元串型),array里就全都是字元串型。

img

因此,將含有字元串的list轉換為array後,沒有實際的價值,因為字元串型的變數無法像數字一樣進行算術運算。

如,求均值,這一點恰恰就是出錯的源頭:

  • 不含字元串型:

img

  • 包含字元串型(出錯):

img

2、 二維列表 list 不能按列截取,只能按行截取;二維數組 array可以按列截取數據,也可以按行截取

img

3、刪除元素時,list和array都不能按列刪除(想要刪除某一列,就要遍歷全部數據),只能逐元素刪除。因此,如果數據量比較大,可以考慮生成新的數據。也可以考慮從 pandas DataFrame 中刪除列。

img


您的分享是我們最大的動力!

更多相關文章
  • Python 3最重要的新特性之一是對字元串和二進位數據流做了明確的區分。文本總是Unicode,由str類型表示,二進位數據則由bytes類型表示。Python 3不會以任意隱式的方式混用str和bytes,你不能拼接字元串和位元組流,也無法在位元組流里搜索字元串(反之亦然),也不能將字元串傳入參數為 ...
  • Python編寫類的時候,每個函數參數第一個參數都是self,一開始我不管它到底是幹嘛的,只知道必須要寫上。後來對Python漸漸熟悉了一點,再回頭看self的概念,似乎有點弄明白了。 首先明確的是self只有在類的方法中才會有,獨立的函數或方法是不必帶有self的。self在定義類的方法時是必須有 ...
  • php中有很多排序的函數,sort,rsort,ksort,krsort,asort,arsort,natcasesort,這些函數用來對數組的鍵或值進行這樣,或那樣的排序。 可以終究有時候還需要一些函數來隨機獲取數組的元素。 array_rand()函數 隨機獲取數組中的一個函數,可以通過第二個參 ...
  • 雖然之前已經學了2個月python,但仍然感覺學的很亂,沒有系統性;或者說自學的沒有條例,只是追求進度,沒有保證知識點的全面與準確。 從今天開始,從python的基礎變數開始重新整理知識點,梳理忽略的內容。願所學即所會,所會即能用。 1、變數名遵循的規則 只能包含字母、數字和下劃線。需要以字母或下劃 ...
  • 一、概述二、Struts2 快速入門程式2.1 開發流程比較2.2 引入依賴2.2 創建jsp頁面2.3 在web.xml中配置前端控制器2.4 創建struts.xml配置文件2.4 創建一個HelloAction類2.5 在struts.xml文件中配置HelloAction2.6 在index... ...
一周排行
x