NumPy
NumPy是什么?
NumPy(Numerical Python的缩写)是一个++开源++ 的Python科学计算模块,其中包含了许多实用的数学函数,用来处理++数值型数据++ 。
优点:
-
很多更高级的扩展模块都依赖于NumPy,比如++pandas++
-
NumPy中有计算平均数、中位数等数学相关的内置函数,可以在代码中省去很多的循环语句,帮助我们更加快速和科学地进行计算
-
NumPy提供了一个叫做N维数组的数据结构,它和Python中的列表list类似,但前者的输入输出性能远优于后者
学习目标1
要想深入了解NumPy,我们就必须先从它的核心 ------ N维数组(ndarray)开始学习。
同时NumPy中,N维数组(ndarray)作为最重要和使用最频繁的对象。
接下来,我们将分别学习以下几个方面:
- N维数组的基本概念和常用属性
2.创建一个N维数组 - N维数组的运算
|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| N维数组 |
| 定义 顾名思义,++N++ ++维数组(ndarray)++ 是一个多维数组,描述了相同类型数据的集合。 隐喻 如图所示,各个科目的分数形成了一个++4x3++ 的二维数组,该数组就是一个同一数据类型 ------ 分数(整型int)的集合。 |
|-----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 有很多属性可以描述N维数组,最常用的两个属性分别是数据类型和维度。 比如,上一页中,我们用了「整型(int)」和「二维」来描述示例中的数组,依次对应的就是数组的数据类型和维度这两个属性。 | |
|----------------------------------------------------------------|---------------------------------------------------------------------------------------------------------|
| NumPy数组的 数据类型 指的是数组中存储的元素类型,可以是:整型(int)、浮点型(float)、布尔型(bool)等。 | 需要注意的是,NumPy数组中的所有元素类型必须是一致的。 |
Ps:
一维空间相当于一根直线。在这样的空间里,只能前进或者后退,所以只有长度的概念。
二维空间其实就是一个平面。在这个平面上,除了前进、后退以外,还可以向左或者向右,所以有长度和宽度的概念。
三维空间就像是一个立方体。在这个空间里,除了前进、后退、向左和向右移动外,还可以向上或者向下,所以有长度、宽度和高度的概念。
|---------------------------------------------------------------------|----------------------------------------------------------------------------|
| NumPy数组的维度和我们平常说的维度非常相似,接触最多的通常是一维(1D)和二维(2D)数组,可以通过中括号[ ]的层数来确定。 | |
|------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| [...]表示一维数组,和Python中的列表长得很像。 在使用print()输出时,它们的区别在于数组之间的元素是用空格分隔,而列表是以逗号分隔。 一维数组的所有元素都在同一「行」里,一行中可以有很多元素。 | |
|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| [[...]]表示二维数组。 二维数组中的每个元素都是一个一维数组,并且每一行的元素数量都是一致的。在二维数组中: 行数代表二维数组中一维数组的数量; 列数代表一维数组中元素的数量。 |
|
以此类推,[[[...]]]表示三维数组,三维数组中的每个元素都是一个二维数组;[[[[...]]]]表示四维数组,四维数组中的每个元素都是一个三维数组...
Like:

有很多属性可以描述N维数组,最常用的两个属性分别是数据类型和维度。
在了解完N维数组的概念和常用属性后,我们来学习如何创建N维数组。在使用NumPy创建N维数组前,我们需要先安装numpy。
导入与安装numpy
|----------------------------------------------------------------------------------------|------------------------------------------------------|
| 安装完后,下一步就是导入numpy。 根据NumPy官方文档的倡导,在导入numpy时通常会使用「np」作为numpy的简写,方便以后调用。 导入numpy的具体代码如下: | # 使用import导入numpy,并使用"np"作为该模块的简写 import numpy as np |
在终端输入pip install numpy安装模块。
在代码中使用import numpy as np导入模块。
如图所示:

创建n维数组
在导入numpy后,我们就可以开始创建N维数组啦~
创建N维数组的方式有很多,最简单的一种方式就是调用NumPy模块中的array()函数。
|---------------------------------------------------------------------------------------------|----------------------------------------------------------------------------|
| 任意序列型对象,也就是列表、元组、数组等数据结构,都可以作为参数传入。 该函数会返回传入的参数所对应的数组。 接下来,通过依次分析如何创建一维数组和二维数组,来更好的理解这个函数吧。 | |
|-------------------------------------------------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 创建N维数组 np.array() 这三行代码创建了一个叫做"arr"的一维数组,并输出了该数组。 第一行导入了numpy,并使用"np"作为该模块的简写。 第二行将一个元素全是整型的列表作参数传入到np.array()中,并将函数返回的结果赋值给了变量arr。 | 第三行输出了该数组,也就是[1 2 3 4 5]。
|
|-----------------------------------------------------------------|
| 函数np.array() np.array()是NumPy中用来创建N维数组的函数。 |
| import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(arr) |
| [1 2 3 4 5] |
|-----------------------------------------------------------------------------|
| 一个列表 作为参数传入np.array()函数中,该函数将返回一个对应的数组。 任意序列型对象,也就是列表、元组、数组等数据结构,都可以作为参数传入。 |
| import numpy as np arr = np.array([1, 2, 3, 4, 5]) print(arr) |
| [1 2 3 4 5]
|
|----------------------------------------------------------------------------|
| 变量名 函数返回的一维数组赋值给了变量arr。 |
| |
| [1 2 3 4 5]
|
再加一个例子:

在学习了N维数组的概念、常用属性以及如何创建一个N维数组后,我们来继续学习N维数组的计算。