使用Python中的numpy库创建一个二维数组
时间: 2025-06-05 16:39:50 浏览: 16
### 使用 NumPy 创建二维数组
NumPy 是 Python 中用于科学计算的强大工具包,其中 `numpy.array` 函数是创建多维数组的主要方法。以下是几种常见的方式,展示如何利用 NumPy 创建二维数组。
#### 方法一:从嵌套列表创建二维数组
这是最常见的做法之一,即先定义一个嵌套列表,再将其转化为 NumPy 数组。
```python
import numpy as np
nested_list = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] # 定义嵌套列表
arr = np.array(nested_list) # 转化为 NumPy 数组
print(arr)
```
该方法适用于已知具体数据的情况,并能轻松地将现有数据结构转换为 NumPy 数组[^1]。
---
#### 方法二:使用内置函数生成固定模式的二维数组
NumPy 提供了许多便捷的函数来生成特定类型的二维数组,比如全零阵、全一阵或随机数矩阵等。
##### 1. 全零阵 (`np.zeros`)
创建指定形状的全零二维数组:
```python
zero_matrix = np.zeros((3, 4)) # 创建 3 行 4 列的全零矩阵,默认浮点型
print(zero_matrix)
```
如果希望得到整数类型的数据,可以显式设置 `dtype` 参数:
```python
zero_int_matrix = np.zeros((3, 4), dtype=int)
print(zero_int_matrix)
```
##### 2. 全一阵 (`np.ones`)
同理可创建全一是二维数组:
```python
one_matrix = np.ones((2, 5), dtype=float) # 创建 2 行 5 列的全一矩阵
print(one_matrix)
```
##### 3. 自定义值填充 (`np.full`)
当需要整个数组都填充值时,可以用 `np.full`:
```python
filled_matrix = np.full((3, 3), fill_value=7, dtype=int) # 填充值为 7 的 3×3 整形矩阵
print(filled_matrix)
```
##### 4. 随机数矩阵 (`np.random.rand`)
有时也需要生成含有随机数的二维数组:
```python
random_matrix = np.random.rand(2, 3) # 创建 2 行 3 列介于 [0, 1) 的均匀分布随机数矩阵
print(random_matrix)
```
---
#### 方法三:通过序列生成器构造二维数组
除了直接赋值外,也可以借助 NumPy 的序列生成器动态构建二维数组。
##### 1. 使用 `arange` 和重塑 (`reshape`) 组合
`arange` 可以生成一系列连续数字,随后通过 `reshape` 改变其维度形成目标二维数组。
```python
sequence_arr = np.arange(1, 10).reshape(3, 3) # 生成从 1 至 9 并调整为 3×3 形状
print(sequence_arr)
```
##### 2. 使用 `linspace`
若需在一定范围内均分若干点构成二维数组,则可用 `linspace`:
```python
linear_space_arr = np.linspace(0, 1, 12).reshape(3, 4) # 在 [0, 1] 上取 12 点并转为 3×4 矩阵
print(linear_space_arr)
```
---
### 总结
- 若要快速初始化带有预设值(如零、一或其他常量)的大规模二维数组,推荐使用 `np.zeros`、`np.ones` 或者 `np.full`。
- 对于需要精确控制元素排列顺序的情形下,可通过组合 `arange` 和 `reshape` 实现复杂布局设计。
- 若涉及概率统计模拟实验等相关领域工作,则考虑运用 `np.random.*` 系列命令生成相应随机样本集合。
阅读全文
相关推荐


















