Python:list 和 array的对比以及转换时的注意事项
前言
array,顧名思義,數(shù)組,就是存儲數(shù)字、處理數(shù)字的一種數(shù)據(jù)結(jié)構(gòu)。今天在將list轉(zhuǎn)換為array時,遇到了一個問題,數(shù)據(jù)量比較大,剛開始怎么都不知道問題出在哪里。直到我用一個3*3的小數(shù)據(jù)測試時,才發(fā)現(xiàn)問題的本質(zhì)所在。浪費了半天的時間,不過總算搞明白了。
學(xué)的不夠踏實,以此警戒所有的初學(xué)者:多思考,遇到問題時從小數(shù)據(jù)入手測試!
說正事兒
1、list 轉(zhuǎn)換為 array:
-
- list里的變量全是數(shù)值型時,array里也全是數(shù)值型。
-
- list里的變量既有數(shù)值型又有字符串類型時(即使只有一個元素是字符串型),array里就全都是字符串型。
因此,將含有字符串的list轉(zhuǎn)換為array后,沒有實際的價值,因為字符串型的變量無法像數(shù)字一樣進(jìn)行算術(shù)運算。
如,求均值,這一點恰恰就是出錯的源頭:
- 不含字符串型:
- 包含字符串型(出錯):
2、 二維列表 list 不能按列截取,只能按行截取;二維數(shù)組 array可以按列截取數(shù)據(jù),也可以按行截取
3、刪除元素時,list和array都不能按列刪除(想要刪除某一列,就要遍歷全部數(shù)據(jù)),只能逐元素刪除。因此,如果數(shù)據(jù)量比較大,可以考慮生成新的數(shù)據(jù)。也可以考慮從 pandas DataFrame 中刪除列。
總結(jié)
以上是生活随笔為你收集整理的Python:list 和 array的对比以及转换时的注意事项的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 浅析Python3中的bytes和str
- 下一篇: Python实现-中介者模式