2

好的,所以我知道编程语言的基础知识,我研究过 python 并且非常喜欢它。我现在正在研究 python 的中间部分,我已经掌握了这些概念。我正在处理一个项目,同时解决练习算法使用的计算机问题。我了解到 python 有局限性,并希望通过学习另一种编程语言来弥补这些局限性。

您建议哪种编程语言可以与 python 很好地协同工作?我想要一些可以在使用 python 和与之相辅相成的语言时给我他们实际经验的东西。诸如“尝试铁蟒或 jython blah blah blah”之类的答案将无济于事,如果您能给我它的优点和缺点,它的成熟度是问题,那么这对我来说已经足够了......非常感谢

编辑-对不起,我想我需要在其中添加一些细节。我将主要使用 python 进行网络编程或游戏开发。因此,如果您认为这种语言 A 可以帮助我在 python 中进行 Web 编程,那么就是这样。

4

5 回答 5

1

IronPython 或 Jython 有什么问题?您可以学习如何用 Java 或 .Net 编写库来缓解 Python 的一些速度问题。学习编写自己的 Python 库肯定会帮助您更好地理解和克服您提到的限制。

于 2010-07-15T13:34:06.060 回答
1

对我来说,在 Python 之后学习的明显选择是 C。C 是一种较低级别的语言,因此您处理的基本计算机概念比对象多,但它会给您编写 Python 扩展所必需的理解。

这样,用 Python 编写程序会很容易,然后将部分迁移到 C 以提高速度——通过编写扩展或使用像Cython这样的桥接语言。

于 2010-07-15T13:36:07.977 回答
1

如果您遇到性能问题(这可能是游戏编程中的问题),C/C++ 程序可以很好地集成到 Python 脚本中,反之亦然:

但我自己还没有看到有必要这样做。

于 2010-07-15T13:36:39.800 回答
1

当您对 Python 相当熟悉时,Common Lisp 和 Scheme 是学习函数式编程的好语言。我最近一直在自己学习 CLisp,并且有很多“啊哈!” 让它变得很有趣的时刻。

如果您打算进入专业领域,IronPython 和 Jython 是很好的学习工具——现在有大量的 C# 和 Java 开发——它们几乎是专业领域的热门语言。IronPython 与所有 .NET 语言集成,而 Jython 当然与 Java 集成。因此,您在那里的选择应该反映您是否希望在 .NET 公司工作。IronPython 和 Jython 都是非常成熟的语言。

其他人已经提到了 C/C++,如果你不熟悉它们,它们是不错的选择,如果大约 30-40 年的编程寿命,以及2010 年 7 月在 TIOBE 指数上的前 3名排名不足以成为学习的充分理由他们...好吧,您可能还有其他问题;)

如果您正在寻找尚未真正经过硬核测试的新语言,您可以使用 Ruby(这似乎是新的性感)和Google 的Go之类的语言。

Perl 有点像 Ruby,因为 Python 和 Ruby/Perl 以及它们所涵盖的领域之间有相当多的重叠。

如果我要选择另一种已经了解 Python 的语言,我会选择一种编译语言 - 可能是 C\C++ 等较低级别的语言。我想这真的可以由你想做什么来决定。如果您想为一家 .NET 公司工作(这可能暗示您真的喜欢 Microsoft 产品,也可能不暗示您真的喜欢 Microsoft 产品),IronPython 和 .NET 语言(C#、VB)是您的最佳选择。OTOH,如果你想为像谷歌这样的公司工作(恰好雇佣了某个人),他们广泛使用 Java 和 Python,所以学习 Jython 可能会更好。

我想你需要问自己的问题是,“今天想去哪里明天?™”

于 2010-07-15T14:01:50.173 回答
0

Haskell 或 Ocaml,或者可能是 Lisp 方言,例如 Common Lisp 或 Scheme。

于 2010-07-15T13:32:57.550 回答