从开发者角度,选择Python而非PHP的项目类型是什么?

3 投票
8 回答
676 浏览
提问于 2025-04-15 16:39

我之前从来没有用过Python,已经用PHP大约五年了。我打算学习Python,但还不太确定要用它来做什么。如果我能想到一个用Python做的项目,那我就用这个项目来学习。

补充说明:我想强调的是,我是专门针对Linux系统的,不是多平台的。
补充2:我希望能得到一些具体的建议,比如一个特定的项目,而不是一些大概的项目领域等等。

8 个回答

4

我将根据编程的简单性和鼓励良好设计实践来回答这个问题。

我最开始学编程是用Perl,很多年里我都是用CGI写网页应用,这个过程从来都不轻松。我总觉得用Perl编程很繁琐,出错的机会也太多了。

当我开始更认真地开发网页应用时,我发现了PHP。从Perl转到PHP是个很自然的过程,因为它们有很多相似的编程方法和语法。我喜欢PHP,因为它的安装很广泛,使用的人也很多,而且比Perl容易得多。不过,和Perl一样,PHP也很容易让人走上错误的道路,导致很多糟糕和不安全的网页应用出现。

四年前,我发现了Django,那时它还很年轻,这改变了我的生活。这让我有动力去学习Python,从那以后我再也没有回头过。我现在用Python做所有事情:

  • 系统编程(服务器配置、监控、报警)
  • 网络编程(路由器/交换机配置自动化、审计、语法检查)
  • 网页应用(不需要解释)

Python的易用性、优雅的语法,以及它默认鼓励最佳实践的特点让我非常喜欢,也让我一直保持兴趣。试试Python吧,你不会后悔的!

5

如果你在做网站,PHP是个不错的选择。但如果你要做其他事情,比如命令行工具、长时间运行的脚本、后台服务等,Python就更合适了。如果你在写PHP脚本时,频繁使用一些低级功能,比如posix扩展、共享内存等,那通常说明用Python会更好。并不是说PHP做不到这些,但Python在这方面表现得更好,出错的几率也更低。

特别是当你要为网站开发后台服务时,Python会是更好的选择。因为在长时间运行的进程(比如后台服务)中,PHP会有一些垃圾回收的问题。而且,有些功能在Python中实现起来更简单、更清晰,比如重定向输入输出流(STDIN、STDOUT和STDERR),而PHP在这方面就比较欠缺。此外,Python还支持多线程,这也是一个加分项。

我现在使用PHP做网站后台服务的情况,主要是当这些服务可以重用大量代码时,比如使用像CakePHP这样的MVC框架。

另外,Python还有一个优势,就是它有很多很多的库可供使用,因为为C语言库创建Python封装相对简单。所以,Python有一些PHP没有的库,比如OpenGL、多媒体等。如果你对这些领域感兴趣,Python显然是更好的选择。

16

Python更适合那些不属于PHP擅长领域的事情,而PHP主要是用来建网站的。

如果你想找一些可以做的编程项目,可以看看这个讨论帖: https://stackoverflow.com/questions/1022738/i-need-a-good-programming-project

撰写回答