📜  python中的np(1)

📅  最后修改于: 2023-12-03 14:46:38.120000             🧑  作者: Mango

Python中的NP

Python中的np指的是NumPy库。NumPy是一个开源的Python科学计算库,它用于处理大型多维数组和矩阵。NumPy对于那些需要进行大量数学运算的科学计算任务非常有用。

安装NP

要安装NumPy,可以在终端中使用以下命令:

pip install numpy
导入NP

在Python中导入NumPy,我们一般使用以下语句:

import numpy as np

这个“as np”的部分是有点像一个别名,它允许我们更轻松地引用NumPy库中的函数和类。

NumPy数组

NumPy的核心对象是数组对象,这些数组可以是N维,即可以是一维、二维、三维等等的数组。可以按照以下方式创建一维和二维数组:

# 创建一维数组
a = np.array([1, 2, 3])
print(a)                  # 输出 [1 2 3]

# 创建二维数组
b = np.array([(1, 2, 3), (4, 5, 6)])
print(b)                  # 输出 [[1 2 3]
                          #      [4 5 6]]
NumPy数组的属性

NumPy数组有多个有用的属性,可以通过这些属性获取有关数组的信息。一些常见的数组属性是:

# ndarray.ndim
# 数组的轴数(维数)
a = np.arange(24)
print(a.ndim)             # 输出 1

b = np.array([(1, 2, 3), (4, 5, 6)])
print(b.ndim)             # 输出 2

# ndarray.shape
# 数组每个维度的大小
c = np.array([(1, 2, 3), (4, 5, 6)])
print(c.shape)            # 输出 (2, 3)

# ndarray.size
# 数组元素的总数
d = np.array([(1, 2, 3), (4, 5, 6)])
print(d.size)             # 输出 6

# ndarray.dtype
# 数组元素的类型
e = np.array([(1, 2, 3), (4, 5, 6)])
print(e.dtype)            # 输出 int64
数组切片和索引

在NumPy中,我们可以像操作Python列表那样在数组中进行切片和索引操作:

# 一维数组切片和索引
f = np.array([(1, 2, 3), (4, 5, 6)])
print(f[0])               # 输出 [1 2 3]
print(f[1, 0:2])          # 输出 [4 5]

# 二维数组切片和索引
g = np.array([1, 2, 3, 4, 5, 6, 7, 8])
print(g[0:7:2])           # 输出 [1 3 5 7]

h = np.array([(1, 2, 3), (4, 5, 6), (7, 8, 9)])
print(h[1,...])           # 输出 [4 5 6]

print(h[...,1])           # 输出 [2 5 8]
数组运算

在NumPy中,我们可以对数组进行各种数学运算,例如加、减、乘、除等。以下是一些常用的数组运算:

# 数组加
i = np.array([(1, 2, 3), (4, 5, 6)])
j = np.array([(7, 8, 9), (10, 11, 12)])
print(np.add(i,j))        # 输出 [[ 8 10 12]
                          #      [14 16 18]]

# 数组减
k = np.array([(1, 2, 3), (4, 5, 6)])
l = np.array([(7, 8, 9), (10, 11, 12)])
print(np.subtract(k,l))   # 输出 [[-6 -6 -6]
                          #      [-6 -6 -6]]

# 数组乘
m = np.array([(1, 2, 3), (4, 5, 6)])
n = np.array([(7, 8, 9), (10, 11, 12)])
print(np.multiply(m,n))   # 输出 [[ 7 16 27]
                          #      [40 55 72]]

# 数组除
o = np.array([(1, 2, 3), (4, 5, 6)])
p = np.array([(7, 8, 9), (10, 11, 12)])
print(np.divide(o,p))     # 输出 [[0.14285714 0.25       0.33333333]
                          #      [0.4        0.45454545 0.5       ]]
结论

NumPy是Python科学计算的重要组件,可以用于处理大型多维数组和矩阵,这对于那些需要进行大量数学运算的科学计算任务非常有用。此外,NumPy还提供了许多数组属性和运算,使得在Python中进行高效的数值计算变得更加简单。