📜  什么是 numpy - Python (1)

📅  最后修改于: 2023-12-03 15:06:24.930000             🧑  作者: Mango

什么是Numpy - Python

Numpy是Python中的一个科学计算包。它提供了高效的多维数组对象以及用于数组计算的一系列工具。

数组对象

Numpy中最重要、最基础的对象是ndarray。ndarray是一个由同类型数据元素组成的多维数组,可以表示矩阵、图像等等。

import numpy as np

# 定义一个二维数组
a = np.array([[1, 2, 3], [4, 5, 6]])

# 输出数组的形状
print(a.shape)
# 输出数组中元素的类型
print(a.dtype)
# 输出数组中的元素个数
print(a.size)

输出:

(2, 3)
int64
6
数组计算

Numpy提供了很多用于数组计算的函数和方法。我们可以用Numpy进行简单的加、减、乘、除计算,也可以用它进行更加复杂的矩阵运算。

import numpy as np

# 定义两个数组
a = np.array([[1, 2], [3, 4]])
b = np.array([[5, 6], [7, 8]])

# 相加
print(a + b)
# 相减
print(a - b)
# 相乘
print(a * b)
# 矩阵乘法
print(np.dot(a, b))

输出:

[[ 6  8]
 [10 12]]
[[-4 -4]
 [-4 -4]]
[[ 5 12]
 [21 32]]
[[19 22]
 [43 50]]
广播机制

如果两个数组在形状上不相同,但可以进行广播后进行运算。广播是指将一个数组沿着某个维度进行复制,使得其形状与另一个数组相同,以便进行运算。

import numpy as np

# 定义一个一维数组
a = np.array([1, 2, 3])
# 定义一个二维数组
b = np.array([[4, 5, 6], [7, 8, 9]])

# 一维数组与二维数组进行广播相加
print(a + b)

输出:

[[ 5  7  9]
 [ 8 10 12]]
总结

Numpy是Python中重要的、基础的科学计算库,它提供了高效的多维数组对象以及用于数组计算的一系列工具,可以满足很多数值计算的需求。学好Numpy也是学好Python科学计算的关键。