在python中,普通的列表list和numpy中的陣列array是不一樣的,最大的不同是:乙個列表中可以存放不同型別的資料,包括int、float和str,甚至布林型;而乙個陣列中存放的資料型別必須全部相同,int或float。
在list中的資料型別儲存的是資料的存放的位址,簡單的說就是指標,並非資料,這樣儲存乙個list就太麻煩了,例如list1=[1,2,3,4]需要4個指標和四個資料,增加了儲存和消耗cpu,而array1=numpy.array([1,2,3,4])只需要存放四個資料,讀取和計算更加方便,因此在做純數字操作時,建議使用array。
也正因為列表可以存放不同型別的資料,因此列表中每個元素的大小可以相同,也可以不同,也就不支援一次性讀取一列,即使是對於標準的二維數字列表:
a=[[1,2,3],[4,5,6]]a[0] #取一行
[1, 2, 3]
a[:,0] #嘗試用陣列的方法讀取一列失敗typeerror: list indices must be integers or slices, not tuple12
345 我們需要用列表解析的方法讀取一列:
b=[x[0] for x in a]print(b)
[1, 4]12
3 而對於陣列,可以直接讀取:
import numpy as npa=np.array([[1,2,3],[4,5,6]])
a[:,0]
array([1, 4])12
34 當然列表在處理混合資料時也有著獨特的優勢。
python中的列表和元組
python中包括6種內建的序列,其中最常用的兩種 列表和元組。列表和元組主要區別在於,列表可以修改,而元組不能修改。序列通用操作 1 索引 序列中所有元素都是從0編號,可以通過編號訪問。可以正數也可負數索引。greeting hello greeting 0 h greeting 1 o 2 分片...
Python中的列表和元組
一.序列 序列中的每乙個元素被分配乙個序號 即元素的位置,也可稱為索引,第乙個索引是0,第二個是1,以此類推,也可以從最後乙個元素開始計數 序列中的最後乙個元素標記為 1,倒數第二為 2,以此類推。1.索引 可以使用索引訪問序列中的任乙個元素 a hello a 0 h 字串字面值能夠直接使用索引 ...
python中列表,元組和字典
集合 元組列表 字典1.用 括起來 列表的建立 list 1,2,2,3,a zifuchuan print list 資料可以重複2.索引從0開始 3.列表中的元素可以沒有關係。可以是數字,字串等等 不強調資料型別相同,列表中資料型別可以不同 可以理解為強化版的陣列,裡面可以存放不同2資料型別 1...