作者Baternest (忍蛋)
看板Python
標題[新聞] 新Python不向下相容
時間Mon Dec 22 08:45:55 2008
http://www.ithome.com.tw/itadm/article.php?c=52669
新Python不向下相容
文/王宏仁 (記者) 2008-12-19
Python語言推出3.0新版,但3.0版無法和舊版相容,最主要的改變是取消了開發者
常用的print語法,開發者必須改用print()函數的呼叫方式,來輸出資料。
去年成為TIOBE排行榜最受歡迎開發語言的Python語言,推出3.0新版。Python官網特別
強調,3.0版是第一個無法和舊版相容的版本。
例如最主要的改變是取消了開發者常用的print語法,開發者必須改用print()函數的
呼叫方式,來輸出資料。
一些常用API,例如filter()、map()、dict()等,也改變了回傳的資料格式。
新版也簡化了比較運算元的規則,如<、>等語法。Python官網解釋,
放棄相容性做大幅調整,目的是希望讓原本就很精簡的語法,更加簡潔。
不過,新版增強了對Unicode的支援,例如可以直接在程式碼中使用中文名稱當作變數,
來儲存資料,有助於提高程式碼可讀性。讀取中文檔案,也只需在開檔函數直接
指定編碼格式即可,不需自行撰寫特殊字元的處理程式。
雖然新版無法與舊版相容,但Python官網建議,開發者可先將舊版程式升級到
Python 2.6版,再透過2to3工具進行自動轉換,不用自行改寫。
文⊙王宏仁
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 61.229.179.167
推 superGA:陣痛期...orz 12/22 10:06
推 ykjiang:等常用套件都跟上這個版本再說吧... 12/22 12:30
推 huggie:這是缺點也是優點 沒有包袱可以讓語言更完美 12/23 16:50
推 Pianos:順道一提:Erlang對Unicode的支援呢 ? 01/13 20:11
推 keitheis:erlang的unicode支援,還在熬吧? 01/17 12:21