numpy-100 新手速查清单:zeros、arange、reshape、nonzero 等10个最高频NumPy函数用法大全
2026/9/19 5:44:40 网站建设 项目流程

numpy-100 新手速查清单:zeros、arange、reshape、nonzero 等10个最高频NumPy函数用法大全

【免费下载链接】numpy-100100 numpy exercises (with solutions)项目地址: https://gitcode.com/gh_mirrors/nu/numpy-100

numpy-100 是一个包含 100 道 NumPy 练习题(附提示与完整答案)的开源练习仓库,它把邮件列表、Stack Overflow 和官方文档中的经典问题汇编成册,目标就是给新老用户一本即查即用的 NumPy 函数速查手册。下面这份清单从这 100 道题中提炼出10 个出现频率最高、最值得背下来的 NumPy 函数,每个函数配一个最小示例和对应的原题位置,帮你用最短时间建立函数索引。

准备工作:5 分钟搭好 NumPy 练习环境

仓库是只读的,先克隆到本地再练习:

git clone https://gitcode.com/gh_mirrors/nu/numpy-100

依赖非常轻,安装 requirements.txt 中的numpypandasjupyter即可。仓库中的 Markdown 和 Jupyter 练习本都是从 source/exercises100.ktx 源数据由 generators.py 程序化生成的,题目带 ★ 难度星级(★☆☆ 入门 → ★★★ 进阶),非常适合新手按星推进。

10 个最高频 NumPy 函数速查表

#函数一句话用途典型原题
1np.zeros创建全零数组题 3、6
2np.arange生成等差整数序列题 7
3np.reshape重塑数组形状题 9
4np.nonzero找出非零元素下标题 10
5np.eye创建单位矩阵题 11
6np.linspace生成等间距数值序列题 39
7np.random生成随机数组题 12–14
8Z.sort()数组原地排序题 40
9np.where条件筛选/三目替换题 29
10Z.mean()/np.std均值与标准化题 14、22

逐个速查:最小示例 + 对应原题

1.np.zeros:一行代码创建全零数组

创建全零数组,是初始化占位、掩码、累积结果的起点:

Z = np.zeros(10) # 一维全零向量 Z[4] = 1 # 第五个位置改成 1

👉 对应原题:第 3 题 创建空向量、第 6 题 仅第 5 位为 1,答案见 100_Numpy_exercises_with_solutions.md。

2.np.arange:生成 10 到 49 的整数向量

range类似但返回数组,支持浮点步长,是构造索引和序列的高频工具:

Z = np.arange(10, 50) # [10, 11, ..., 49]

👉 对应原题:第 7 题 创建 10–49 的向量,答案见 100_Numpy_exercises_with_solutions.md。

3.np.reshape:把一维序列折成 3x3 矩阵

reshape不改变数据,只改变"看"的形状,是矩阵题里出镜率最高的方法:

Z = np.arange(9).reshape(3, 3) # 0..8 折成 3x3

👉 对应原题:第 9 题 创建 3x3 矩阵,答案见 100_Numpy_exercises_with_solutions.md。

4.np.nonzero:定位所有非零元素的下标

过滤、统计、稀疏操作都靠它返回"哪些位置不是 0":

nz = np.nonzero([1, 2, 0, 0, 4, 0]) # 返回下标元组 (0, 1, 4)

👉 对应原题:第 10 题 找非零元素下标,答案见 100_Numpy_exercises_with_solutions.md。

5.np.eye:一步生成单位矩阵

线性代数、归一化、矩阵运算的标配起点:

Z = np.eye(3) # 3x3 单位矩阵

👉 对应原题:第 11 题 创建 3x3 单位矩阵,答案见 100_Numpy_exercises_with_solutions.md。

6.np.linspace:在 0 到 1 之间均匀取 11 个点

绘图、采样、划分区间时用它比arange更精确(含端点可控):

Z = np.linspace(0, 1, 11)

👉 仓库中它被广泛用于网格化题目,可参考 100_Numpy_exercises_with_solutions.md 的meshgrid组合用法。

7.np.random:随机数组是 100 题的"万能素材"

生成均匀分布随机数组,配合min()/max()/mean()做统计:

Z = np.random.random((10, 10)) Zmin, Zmax = Z.min(), Z.max() m = np.random.random(30).mean()

👉 对应原题:第 12–14 题 随机数组三件套,答案见 100_Numpy_exercises_with_solutions.md。

8.Z.sort():原地排序,一行搞定

Z = np.random.random(10) Z.sort() # 原地升序

👉 对应原题:第 40 题 随机向量排序,答案见 100_Numpy_exercises_with_solutions.md。进阶玩法见第 59 题"按第 n 列排序"(★★☆)。

9.np.where:满足条件取一个值,否则取另一个

条件表达式、整数部分提取的"三目运算符":

np.where(Z > 0, np.ceil(Z), np.floor(Z))

👉 相关答案见 100_Numpy_exercises_with_solutions.md。

10.mean/std:均值统计与矩阵标准化

Z = np.random.random((5, 5)) Z = (Z - Z.mean()) / Z.std() # 标准化:均值 0、标准差 1

👉 对应原题:第 14 题 求随机向量均值 与 第 22 题 归一化 5x5 矩阵,答案见 100_Numpy_exercises_with_solutions.md。

如何练习:按版本挑选适合你的练习册

仓库提供了 4 个版本的练习文档,建议按"先题后答"的顺序使用:

文件用途
100_Numpy_exercises.md纯题目,适合自测
100_Numpy_exercises_with_hints.md题目 + 提示,卡壳时用
100_Numpy_exercises_with_solutions.md题目 + 完整答案
100_Numpy_exercises_with_hints_with_solutions.md题目 + 提示 + 答案全包含

想动手交互练习?直接打开 100_Numpy_exercises.ipynb 在 Jupyter 里逐题作答,或用 100_Numpy_random.ipynb 随机抽题自测——抽题逻辑见 initialise.py 中的pick()函数。

小结:从速查到熟练的三步路径

  1. 先背 10 个zerosarangereshapenonzeroeyelinspacerandomsortwheremean/std——本清单覆盖它们的最小用法;
  2. 再做 ★☆☆ 题:约前 35 道入门题(题目列表),巩固数组创建、索引与基础统计;
  3. 挑 ★★★ 题挑战:如第 84 题"提取 3x3 连续块"、第 100 题"Bootstrap 置信区间",把单个函数组合成真实数据处理技能。

100 道题、10 个高频函数,一份速查清单加 100 道实战练习,就是 numpy-100 给你的最短 NumPy 学习路线 🚀

【免费下载链接】numpy-100100 numpy exercises (with solutions)项目地址: https://gitcode.com/gh_mirrors/nu/numpy-100

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询