python數(shù)組和列表有哪些區(qū)別?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
創(chuàng)新互聯(lián)專注于企業(yè)全網(wǎng)整合營(yíng)銷推廣、網(wǎng)站重做改版、朝天網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、html5、電子商務(wù)商城網(wǎng)站建設(shè)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為朝天等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。python中的list是python的內(nèi)置數(shù)據(jù)類型,list中的數(shù)據(jù)類不必相同的,而array的中的類型必須全部相同。在list中的數(shù)據(jù)類型保存的是數(shù)據(jù)的存放的地址,簡(jiǎn)單的說(shuō)就是指針,并非數(shù)據(jù),這樣保存一個(gè)list就太麻煩了,例如list1=[1,2,3,'a']需要4個(gè)指針和四個(gè)數(shù)據(jù),增加了存儲(chǔ)和消耗cpu。numpy中封裝的array有很強(qiáng)大的功能,里面存放的都是相同的數(shù)據(jù)類型
python本身并沒(méi)有數(shù)組類型,但是他的Numpy庫(kù)中有數(shù)組類型。
二者都可以用于處理多維數(shù)組。
Numpy中的ndarray對(duì)象用于處理多維數(shù)組,它作為一個(gè)快速而靈活的大數(shù)據(jù)容器。Python列表可以存儲(chǔ)一維數(shù)組,通過(guò)列表的嵌套可以實(shí)現(xiàn)多維數(shù)組。
2存儲(chǔ)效率和輸入輸出性能不同。
Numpy專門(mén)針對(duì)數(shù)組的操作和運(yùn)算進(jìn)行了設(shè)計(jì),存儲(chǔ)效率和輸入輸出性能遠(yuǎn)優(yōu)于Python中的嵌套列表,數(shù)組越大,Numpy的優(yōu)勢(shì)就越明顯。
3元素?cái)?shù)據(jù)類型。
通常,Numpy數(shù)組中的所有元素的類型都必須相同的,而Python列表中的元素類型是任意的,所以在通用性能方面Numpy數(shù)組不及Python列表,但在科學(xué)計(jì)算中,可以省掉很多循環(huán)語(yǔ)句,代碼使用方面比Python列表簡(jiǎn)單的多。
array的創(chuàng)建
Numpy數(shù)組創(chuàng)建時(shí),參數(shù)既可以是list,也可以是元組。例如:
>>> a=np.array((1,2,3))#參數(shù)是tuple >>> b=np.array([6,7,8])#參數(shù)是list >>> c=np.array([[1,2,3],[4,5,6]])#參數(shù)是二維list
除此之外,還可以使用numpy提供的其他方法創(chuàng)建一個(gè)數(shù)組,例如:
>>> arr1=np.arange(1,10,1) >>> arr2=np.linspace(1,10,10)
np.arange(a,b,c)表示產(chǎn)生從a-b不包括b,間隔為c的一個(gè)array,數(shù)據(jù)類型默認(rèn)是int32。但是linspace(a,b,c)表示的是把a(bǔ)-b平均分成c分,它包括b。
看完上述內(nèi)容,你們掌握python數(shù)組和列表有哪些區(qū)別的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!