从开发的角度来看, PHP 是面向 web 的语言. PHP 应用程序更像是一组单独的脚本, 甚至只是一个单独入口. 而 Python 是多用途语言, 也可以用于 WEB 开发, 基于 Python 的 WEB 应用是加载到内存的完整应用, 有自己的内容声明, 保存所有的查询和请求.
Python 因简单易学, 强大的兼容性等优势颇受欢迎;
同样受欢迎的还有 PHP,Java,c#,Ruby 等流行的 WEB 技术.
那么与这几大流行语言相比, Python 都有哪些优势呢?
狭路相逢, 谁会更胜一筹?
- Round1
- Python PK PHP
从开发的角度来看, PHP 是面向 WEB 的语言. PHP 应用程序更像是一组单独的脚本, 甚至只是一个单独入口.
而 Python 是多用途语言, 也可以用于 WEB 开发, 基于 Python 的 WEB 应用是加载到内存的完整应用, 有自己的内容声明, 保存所有的查询和请求.
选择 Python 还是 PHP 进行 web 应用开发需要注意以下几点:
通用性
当今时代, 趋势和流行非常重要, 一些客户和产品负责人只想使用最流行最热门的技术来开发他们的项目, 造成了技术精湛的开发人员却完全没有客户和工作的情况出现. 所以在开始学习任何东西前, 要确保你要学的技术在未来 1,5 或 10 年内仍保持流行, 不会被遗忘.
不过, 你大可不必担心, 因为 PHP 和 Python 都属于世界上最流行的编程语言.
PHP 用于构建 Wikipedia, Yahoo, WordPress, Friendster, MailChimp, Flickr 等许多 "巨头", 但不要以为 Python 没什么用, 它也用来构建了 YouTube, Instagram, 桌面版的 Dropbox, Reddit, Bitbucket, Quora, Spotify, Pinterest, Facebook 的内部服务, 以及 PayPal 系统的一部分.
框架
当你选择一项技术的时候, 工具的多样性也是极其重要的, 它会使你的工作简单, 方便. 如果一个技术为不同的任务提供了多种工具, 程序员就不必每件事都要从头开始了.
PHP 最流行的框架是 Laravel, Symfony, CodeIgniter, Yii 1 and 2,Phalcon 和其他一些, 这些工具能帮你创建功能强大而整洁的应用程序, 而 Python 却没有这么多引以为豪的框架, 最好用的是 Django 和 Flask, 但是, 我们可以向你保证, 随着 Python 社区的成长, 这种情况会很快改变.
学习
这通常是学生第一个想要知道的问题, 学习教育的过程越容易, 意味着开始工作和赚钱越快.
Python 当然是这类的赢家, 它的语法容易, 简单易学; 而 PHP 却不是这样, 掌握 PHP 需要花费很多的时间和努力.
Python 允许你犯些小错但不会破坏代码, 给新手一些信心继续学习. 从新手的角度来看, 想学一些更容易, 更灵活的技术, Python 无疑是首选. 你可以用 Python 创建安全的应用程序, 但使用用 PHP 却需要额外的工具.
- Round2
- Python PK Java
Java 是一种严格的类型语言, 这意味着必须显式声明变量名. 相比之下, 动态类型的 Python 则不需要声明变量. 在编程语言上有许多关于动态和静态类型的争论, 但有一点应该注意: Python 是一种语法简单的功能强大的语言, 能够通过编写脚本就提供优秀的解决方案, 并能够快捷地部署在各个领域.
Java 可以创建跨平台的应用程序, 而 Python 几乎兼容当前所有操作系统. 对新手来讲, Python 比 Javaf 更容易上手, 而且代码易读性强, 但如果你想你的代码可以在任何地方都能执行的话, 那么还是选择 Java 吧. 不过 Java 的可移植性也是有代价的, 使用 Java 你需要购买更大的机器, 消耗更多的内存, 并且程序更加难以开发.
Java 比 Python 更复杂, 没有技术背景的人学起来并非易事.
- Round3
- Python PK c#
简而言之, Python 原本就被设计的类似用英语表达一样, 只要你使用合适的变量名称, 许多表达式就很容易读懂. 另外, 由于 Python 语法简单, 没有像句法括号和大量的修饰词, 各种类 C 的构造和不同的初始化变量, 所以 Python 写的代码易读易学.
同时, C# 从 C++ 和 Java 遗传了很多原始表达的类 C 语法, 更重要的是, C# 语法使我们必须遵循一定的规则来编写自已的方法或是继承类, 伴随而来的是另一大串修饰词, 还有一点不能忘记的是要把代码段放在括号内. 而 Python 只用 SHIFTS 键就可以让代码看上去很整洁.
至于编写脚本方面, 值得一提的是 Python 的脚本是真正的脚本, 能够被解释器执行. 你可以用任何编辑器打开它, 修改后就可以立即运行. 这在手边没有 IDE 或编译器的时候优势十分明显. 而且使用 Python 更容易编写跨平台的脚本, 甚至都不需要重新编译.
但是, 我们要指出 Python 的一个不足, 就是需要在机器上安装脚本解释器, 至少要在一个包或可执行文件里打包上一个解释器, 从而使脚本的大小从几 KB 增加到十几 M, 不过对于现代计算机来说, 十几兆的空间需求基本可以忽略不计, 所以这也不是什么大问题.
而 C# 需要 IDE 来编写程序, C# 的一个好处是, 当你编写基于 WINDOWS 平台的脚本时, 它有强大的各类 WINDOWS 系统组件支持. 例如, 注册表, WMI, 网络等内置工具. C# 可以使用 WINFORMS, 你需要的时候可以很容易地创建图形化接口.
没法说 Python 和 C# 哪个更好, Python 比 C# 更容易学, 开源库更多, 但 C# 的标准库比 Python 的更好, 其性能更高.
- Round4
- Python PK Ruby
就第一语言而言, Ruby 和 Python 是最受欢迎的. Ruby 是非常流行的构建网站技术, 其中最著名的是 Twitter(早期版本),Basecamp,Github,Airbnb,Slideshare,Groupon.
Ruby 和 Python 都是面向对象的语言, 都是动态和灵活的. 这些技术的主要区别在于他们解决问题的方式. Ruby 提供了不同的方法而 Python 通常只有一个. 这个事实既是优势也劣势.
最流行的 Ruby 框架是 Ruby on rails. 它和 Django 非常类似, 因为这两个框架都是为了解决相同的任务. 如果我们比较这些技术的社区, 我们会发现他们几乎是一样的.
然而, 形成这些团体的人是不同的. Python 在数据科学和数学方面很受欢迎, 所以在这里你可以找到很多的学者和教授.
记住, 当你开发 web 应用程序时, 可以用 RoR 实现, 也可以用 Django, 两者都是快速高效的. 如果开发偏重于大量计算和数据处理的应用, 应该选择 Python.
任何技术成功的秘密在于围绕它所构建的社区, 不同人群协同工作来确定其未来的发展演变, Python 的支持者是世界上规模最大和构成最多样化的一个团队, 不仅有数以千计的个人开发者, 而且还有诸如谷歌, Yandex,Dropbox,Mozilla, 微软(在 Visual Studio 中使用), 英特尔等许多巨头公司, 他们和其他许多公司一起, 已经用 Python 创建了世界上最大的和最受欢迎的项目.
金属质感分割线
综上所述, Python 与 PHP,Java,c#,Ruby 等语言相比, 都有其独特的优势, 且随着开发人员社区的不断状大, 支持库的持续增多, Python 已成为世界上功能最丰富的编程语言之一, 可适用于任何项目开发.
来源: http://developer.51cto.com/art/201806/575656.htm