Python學習筆記(15)

2021-09-25 23:27:45 字數 1512 閱讀 3984

假設要儲存這樣的資料

name

agewgt

0dan

123.1

1ann

025.1

2sam

28.3

首先定義乙個人的結構型別

person_dtype = np.dtype([('name', 's10'), ('age', 'int'), ('weight', 'float')])
然後構建乙個3x4的空結構體陣列:

people = np.empty((3,4), person_dtype)
分別賦值

people['name'] = [['brad', 'jane', 'john', 'fred'],

['henry', 'george', 'brain', 'amy'],

['ron', 'susan', 'jennife', 'jill']]

people['age'] = [[33, 25, 47, 54],

[29, 61, 32, 27],

[19, 33, 18, 54]]

people['weight'] = [[135., 105., 255., 140.],

[154., 202., 137., 187.],

[188., 135., 88., 145.]]

當然還可以從文字中讀取結構化陣列

person_dtype = np.dtype([('name', 's10'), ('age', 'int'), ('weight', 'float')])

people = np.loadtxt('people.txt',

skiprows=1,

dtype=person_dtype)

people

所以結構化陣列的關鍵在於我們如何去看待去解釋這段記憶體

你的自定義dtype是什麼

有時候,結構陣列中的域可能包含巢狀的結構,例如,在我們希望在二維平面上紀錄乙個質點的位置和質量:

position

mass

x y

那麼它的型別可以這樣巢狀定義:

particle_dtype = np.dtype([('position', [('x', 'float'), 

('y', 'float')]),

('mass', 'float')

])data = np.loadtxt('data.txt', dtype=particle_dtype)

很多 numpy 函式返回的是 array,不是 matrix

在 array 中,逐元素操作和矩陣操作有著明顯的不同

向量可以不被視為矩陣

具體說來:

其優缺點各自如下:

array

matrix

二者可以互相轉化:

Python學習筆記 1 5章 迴圈

這是學習廖雪峰老師python 教程的學習筆記 1 for 迴圈遍歷 1 遍歷名字 names michael bob tracy for name in names print name 2 計算1 100 的整數和 range 函式可以生成整數序列,從0 開始計數的,包前不包後。即最後乙個數始終...

Python學習筆記(15) 繼承 多型

乙個類a擁有乙個類b的屬性和方法,類a稱作子類或派生類,類b稱作父類或基類 示例 class animal object def init self self.color 黑色 defrun self print 跑 class cat animal pass tom cat print tom.c...

學習筆記15

響應式 media 不同的大小 執行不行的css 寫上 float left 預設不會屏佔百分百,寫上多少就是多少 但是無法滿足全屏鋪滿 min left 900x 的意思是 當寬度小於這個值時候 底部出現滾動條 position absolute 這麼寫 會鋪滿螢幕 只有加上 left right...