翟晓鹰 作品

第493章 Numpy多维数组,一个故事解释

故事比喻:魔法书架与多维数组(nupy多维数组)

在一个神秘的图书馆里,有一座巨大的魔法书架,它可以整齐地存放、查找、调整和计算大量的书籍。这个书架的排列方式非常特殊,就像nupy的多维数组(ndarray),每一层、每一排、每一个格子都有规律可循。

1d数组:单层书架(nupy的1维数组)

首先,魔法书架的第一层存放着一系列书籍,它们整齐地排成一排。

比喻:一维数组(1darray)就是一排书。

iportnupyasnp

shelf=np.array([‘哈利波特’,‘纳尼亚传奇’,‘指环王’])

?特点:

?只有一排,没有更复杂的结构。

?你可以用索引快速找到书,比如shelf[0]就是‘哈利波特’。

2d数组:多层书架(nupy的2维数组)

馆长觉得一排书不够放,于是他增加了第二层书架,现在书架上有多行书,每一行都是一个类别:

书架层书籍1书籍2书籍3

第一层(小说)哈利波特纳尼亚传奇指环王

第二层(科幻)三体银河帝国沙丘

比喻:二维数组(2darray)就像一个有多层的书架,每一行是一个类别。

shelves=np.array([

[‘哈利波特’,‘纳尼亚传奇’,‘指环王’],

[‘三体’,‘银河帝国’,‘沙丘’]

])

?特点:

?每一行都是一类书,比如第一行是小说,第二行是科幻。

?shelves[1,0]代表‘三体’,因为[1]代表第二层,[0]代表第一本书。

3d数组:多排、多层、多书架(nupy的3维数组)

为了存放更多的书,图书馆扩建了一个新的房间,里面有多个这样的书架。现在整个图书馆的结构变成这样: