数据里的神器,NumPySciPy,可以说是 Python 圈子的老朋友了。安装方面也不麻烦,Windows 下你可以直接下 whl 包配合 pip 搞定,Mac 上用 Homebrew 装 Python,再一条条走下来也挺顺的。

NumPy干的事儿主要是数组运算,跟原生列表比,性能差距还挺的。比如你用arr * 1.1来做数值计算,几百万条数据照样飞快。列表就不行了,慢得你抓狂。

数组的创建方式蛮多的,像np.arange()能快速生成等差数列,np.zeros()np.ones()也好用,指定dtype还能控制类型。还有reshape()ravel(),多维数组方便。

至于SciPy,它就像 NumPy 的好搭档,擅长更复杂的数学、信号、优化算法等等。如果你搞机器学习或者科学计算,肯定用得上。

建议你平时写代码多用%timeit测测性能,像arr * 1.1 vs 自定义函数list_times()这种测试,多练几次就有感觉了。

如果你刚开始玩数据,或者准备把 Matlab 代码迁移到 Python,这俩库肯定要熟练掌握。对了,Guided Filter 的 Numpy/Scipy 实现也可以看看,挺实用的。

提醒一句,如果你在 Windows 上卡在安装那一步,别硬刚,试试那些集成好的 Python 发行包,比如Python(x,y)或者ActivePython,能省不少事儿。