Java與python的效率比較思考

          Posted on 2008-11-08 00:16 Robert Su 閱讀(4462) 評論(0)  編輯  收藏 所屬分類: PythonJava
          java是一種解析性的語言,可是多了一個中間步驟,就是把源代碼編譯成class文件,不過此編譯非編譯器的編譯,因為class里面不是機器語言或匯編語言,而是經過編碼的8位字節二進制流。JVM是java的解析器。

          python是一門地地道道的解析型語言。
          它們之間的效率誰更高呢?

          大頭 23:56:14
          “如果相同功能的class和python,class執行要快,因為class已經全部翻譯好了,python還要一句一句解析。”

          Java多了編譯成class的過程,所以效率相對于python要慢一些。

          事實上python也可以產生class一樣的東西
          字節編譯的.pyc文件
          “輸入一個模塊相對來說是一個比較費時的事情,所以Python做了一些技巧,以便使輸入模塊更加快一些。一種方法是創建 字節編譯的文件 ,這些文件以.pyc作為擴展名。字節編譯的文件與Python變換程序的中間狀態有關(是否還記得Python如何工作的介紹?)。當你在下次從別的程序輸入這個模塊的時候,.pyc文件是十分有用的——它會快得多,因為一部分輸入模塊所需的處理已經完成了。另外,這些字節編譯的文件也是與平臺無關的。所以,現在你知道了那些.pyc文件事實上是什么了。”——《python簡明教程》


          (煩請明白的看到了錯誤之處給指正:)

          附:
          編譯型語言,執行速度快、效率高;依賴編譯器、跨平臺性差些。如C、C++、Delphi、Pascal,Fortran。
          解釋型語言,執行速度慢、效率低;依賴解釋器、跨平臺性好。如Java、Basic.

          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          posts - 103, comments - 104, trackbacks - 0, articles - 5

          Copyright © Robert Su

          主站蜘蛛池模板: 祁门县| 云浮市| 巴南区| 罗源县| 屏东县| 香河县| 包头市| 东乌珠穆沁旗| 揭东县| 武胜县| 柘荣县| 星子县| 房产| 舟曲县| 宝丰县| 武义县| 大同市| 枝江市| 和林格尔县| 日土县| 诸暨市| 蒙自县| 闽清县| 旬邑县| 营口市| 潜江市| 贡嘎县| 镇远县| 锦屏县| 兰坪| 泽普县| 太保市| 台湾省| 河西区| 五原县| 工布江达县| 修文县| 云梦县| 张家港市| 平顺县| 江孜县|