1.众多开源的科学计算软件包提供了Python的调用接口,如计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK。
2.Python专用的科学计算库很多。如经典的NumPy、SciPy和matplotlib,它们分别为Python提供了快速数组处理、数值运算及绘图功能。
3.自动补全。输入一部分文字之后按Tab键,IPython将列出所有补全信息。用此功能可快速输入对象的属性名或者进行文件名补全。
4.Spyder是一个简单的集成开发环境。和其他Python开发环境相比,它最大的优点是模仿matlab的“工作空间”功能,可很方便的观察和修改数组的值。
函数库介绍
数值计算库
Numpy为Python带来了真正的多维数组功能,并提供了对数组进行处理和运算的函数集。对常用的数学函数进行数组化,使这些函数能直接对数组进行运算,将本来需要在Python中进行的循环运算,转移到高效率的库函数中,提高程序的运算速度。
SciPy则在NumPy的基础上添加了许多科学计算的函数库,其中一些函数是通过对Fortran数值计算库进行封装实现的,如
线性代数使用LARACK库
快速傅里叶变换使用FFTPACK库
常微分方程求解使用ODEPACK库
非线性方程组求解以及最小值求解等使用MINPACK库
有了NumPy和SciPy这两个库,Python就几乎有和matlab一样的数据处理能力了。此外,SciPy中的Weave模块能在Python程序中直接嵌入C++程序,进一步提高程序的运算速度。
符号计算库
SymPy是一套数学符号运算的扩展库,可帮助进行公式推导,做一些简单的符号运算工作。
界面设计
Python可用多种界面库编写GUI程序。如TK为基础的Tkinter、wxWidgets为基础的wxPython、QT为基础的pyQt4等界面库。
绘图和可视化
matplotlib和Chaco是两个很优秀的二维绘图库。matplotlib库可快速绘制图表,以多种格式输出,且带有简单的三维绘图功能。而Chaco以Traits为基础,能方便地编写出交互式图表控件,并嵌入到用TraitsUI编写的界面程序中。用Vpython库能够快速、方便地制作三维动画演示,使数据更有说服力。
图像处理和计算机视觉
pyOpenCV库