Python已不是程序员需要的编程语言,现在有关科学计算生的领域到需要Python,比如科学家。
为何科学家需要Python?
- 获取数据(模拟,实验控制),
- 处理和处理数据,
- 为报告或出版物可视化结果,快速理解,同时也提供高质量的数据。
Python的优势
- python不要重新发明轮子,现在很多市场免费算法库扩展很多。
- Python语法很简单,避免使用奇怪的符号或冗长的例程规范,这会使读者偏离对代码的数学或科学理解。
- 高效代码 Python数值模块具有计算效率。如果花费太多时间来编写它,那么非常快的代码将变得毫无用处,Python旨在缩短开发时间并缩短执行时间。
- Universal Python是一种用于许多不同问题的语言,学习Python避免了为每个新问题学习新软件。
Python与其语言相比如何?
编译语言:C,C ++
- 优点:非常快,对于繁重的计算,很难超越这些语言。
- 缺点:痛苦的使用:在开发过程中没有交互性,强制编译步骤,冗长的语法,手动内存管理。对于非程序员来说,这些语言很难。
Matlab脚本语言
- 优点:非常丰富的库集合,具有多种算法,适用于许多不同的域。快速执行,因为这些库通常用编译语言编写。
- 愉快的开发环境:全面的帮助,综合编辑等
- 提供商业支持。
- 缺点:基本语言非常差,可能会对高级用户产生限制。
- 不是免费的。
The Julia Language
- 优点:快速的代码,但互动和简单。
- 轻松连接到Python或C.
- 缺点:生态系统仅限于数值计算。
- 还年轻。
其他脚本语言:Scilab,Octave,R,IDL等
- 优点:开源,免费或至少比Matlab便宜。
- 某些功能可能非常先进(R中的统计数据等)
- 缺点:比Matlab更少的可用算法,并且语言不是更高级。
- 有些软件专用于一个域。例如:Gnuplot绘制曲线。这些程序非常强大,但它们仅限于一种用法,例如绘图。
Python
- 优点:非常丰富的科学计算库
- 经过深思熟虑的语言,允许编写非常易读且结构良好的代码:我们“编写我们的想法”。
- 许多科学计算以外的图书馆(网络服务器,串口访问等)
- 免费和开源软件,广泛传播,拥有充满活力的社区。
- 各种强大的工作环境,如 IPython, Spyder, Jupyter笔记本, Pycharm
- 缺点:并非所有算法都可以在更专业的软件或工具箱中找到。
科学Python生态系统
- 优点:非常丰富的科学计算库
- 经过深思熟虑的语言,允许编写非常易读且结构良好的代码:我们“编写我们的想法”。
- 许多科学计算以外的图书馆(网络服务器,串口访问等)
- 免费和开源软件,广泛传播,拥有充满活力的社区。
- 各种强大的工作环境,如 IPython, Spyder, Jupyter笔记本, Pycharm
- 缺点:并非所有算法都可以在更专业的软件或工具箱中找到。
1.1.2。科学Python生态系统
与Matlab或R不同,Python没有为科学计算提供预先捆绑的模块集。以下是可以组合以获得科学计算环境的基本构建块:
Python,一种通用的现代计算语言
- 语言:流控制,数据类型(string,int),数据集合(列表,字典)等。
- 标准库的模块:字符串处理,文件管理,简单网络协议。
- 用Python编写的大量专用模块或应用程序:Web框架等......以及科学计算。
- 开发工具(自动测试,文档生成)