Python是一种解释型、动态语言,具有明确而高效的语法。Python具有良好的REPL(Read-Eval-PrintLoop,‘读取-求值-输出’循环),还可以通过dir()和文档字符串从REPL中开发新模块。这是程序员更偏向于Python而不是C、C++或Java的一个原。
Python社区于90年代中期投入精力开发了Numeric,它是“Python的一个扩展,以使其像Matlab那样自然地支持数值分析”。Numeric后来演变成为NumPy。几年后,Matlab的绘图功能通过matplotlib库被移植到Python中。科学计算的库围绕NumPy和matplotlib建立,并打包成SciPy包。Python在类Matlab的数组操作和绘图功能上的支持,是它比Perl和Ruby更受到青睐的主要原因。
除了前面提到的把Matlab的特性移植到Python的工作外,近期的工作已经把一些R和Mathematica中流行的特性移植到了Python。
R语言中的数据框和相关操作(来自plyr和reshape包)已经由pandas库实现。scikit-learn项目呈现了许多机器学习算法的通用接口,类似于R中的caret包。
Mathematica/Sage中“notebook”的概念已经由IPythonnotebooks实现。