2010-07-15 58 views
2

好,所以我知道編程語言的基礎知識,我學習了python並非常喜歡它。我現在正在學習python的中間部分,並且我正在捕捉這些概念。我正在與一個項目合作,同時解決練習算法使用的計算機問題。我已經瞭解到python有侷限性,並希望通過學習另一種編程語言來彌補這種侷限性。其他語言與Python有什麼協同作用?需要建議

你認爲哪種編程語言與python很好地協同工作?我想要一些能夠給我他們的實際經驗,同時使用python和與之互補的語言。像「試鐵Python或Jython的等等等等等等」的回答不會幫助,如果你可以給我它的優點和缺點,它的成熟是問題,那麼這對我來說不夠好......非常感謝

編輯 - 對不起,我想我需要在這裏添加一些細節。我將主要用於web編程或遊戲開發。所以,如果你認爲這種語言A會幫助我在Python編程中進行網絡編程,那麼就是這樣。

回答

0

哈斯克爾或者Ocaml,也許一種Lisp方言,如Common Lisp的或方案。

1

IronPython或Jython有什麼問題?您可以學習如何使用Java或.Net編寫庫來緩解Python的一些速度問題。學習編寫自己的Python庫肯定會幫助你更好地理解和克服你提到的限制。

1

對於我來說,顯而易見的選擇Python的後學的是C. C是一種低層次的語言,所以你要處理的更基本的計算機概念,不是對象,但它會給你寫擴展到Python必要的理解。

這樣一來,使用Python編寫程序將變得很容易,然後通過writing an extension或使用橋接語言(如Cython)將部件遷移到C以加快速度。

1

如果您遇到性能問題(這可能是在遊戲編程的問題),C/C++程序可以很好地集成到Python腳本,反之亦然:

但我還沒有看到自己需要這樣做。

1

當你與Python很舒服,Common Lisp的和計劃好的語言學習函數式編程。我最近一直在學習CLisp,還有很多「哈哈!」這使它變得非常有趣。

如果您打算進入專業領域,IronPython和Jython是很好的學習工具 - 目前在C#和Java中有噸的開發 - 它們幾乎是專業領域的熱門語言。 IronPython與所有.NET語言集成,而Jython當然與Java集成。所以你的選擇應該反映你在.NET公司工作的願望,或者不。 IronPython和Jython都是成熟的語言。

其他人已經提到過C/C++,如果你不熟悉C/C++是不錯的選擇,並且如果對TIOBE指數2010年7月的編程壽命和012-排名不夠強學習它們的理由...以及你可能有其他問題;)

如果你正在尋找更新的語言,沒有真正經過測試的核心,你有像Ruby(這似乎是新的性感),和谷歌Go

Perl有點像Ruby,因爲Python和Ruby/Perl以及它們覆蓋的區域之間有很大的重疊。

如果我要選擇另一種語言,已經知道Python,我會選擇一種編譯語言 - 也許像C \ C++這樣的低級語言。我想這確實可以由你想做什麼決定。如果你想爲一家.NET公司工作(這可能意味着也可能不意味着你真的喜歡微軟的產品),IronPython和一種.NET語言(C#,VB)是最好的選擇。 OTOH,如果你想爲像谷歌這樣的公司工作(它恰好使用了a certain individual),他們廣泛使用Java和Python,因此學習Jython可能會更好。

我猜你需要問自己的問題是,「哪裏我想今天去明天?™」