» 大游窩碼農(nóng)多,請教個問題,有多少人用的python3?當(dāng)初搞出python3,跟python2很多地方不搭邊是怎么想的?
一直不解
python3都推出多少年了,一直不溫不火的
網(wǎng)友評論2014-01-25 17:40
用python2.7的解釋器配合python3接近的語法寫是現(xiàn)在主流方式,
可以用six這個庫來做2和3的兼容。
python是開源語言, 設(shè)計思路在不斷完善, 發(fā)展到一半, 發(fā)現(xiàn)有些之前架構(gòu)不合理的地方
比如unicode和類的元數(shù)據(jù)
這樣就有2種解決方案, 一種是類似微軟一直主張的向前兼容, 一種是丟開歷史包袱, 重新設(shè)計。
然后python選擇了后者, 這個python的設(shè)計思想有關(guān)系, 縫縫補(bǔ)補(bǔ), 向前兼容絕對不是優(yōu)雅的設(shè)計, 也和社區(qū)思想抵觸, 參考the zen of python
這樣大改, 一定會導(dǎo)致災(zāi)難性的遷移問題, guido是個很搞的人, 。。ps.如果了解他的都會知道他很喜歡開玩笑, python名字的由來也是他喜歡看python monty馬戲團(tuán)的惡搞。。
所以社區(qū)里一直稱python3是 py3k,也就是python 3000,
意思是下個版本是py3, 然后py4, py5, py6 ... 直到py3000時, py3k就能代替py2實裝了。。
事實上現(xiàn)在大部分庫都已遷移到了py3k, 除了twisted, gevent之類的,
也就是你不用這些庫的話, 完全可以用py3k寫,
2.7以后也不會增加新的功能, 只會修復(fù)bug, 和語法越來越接近py3k
現(xiàn)在比較致命的問題其實是很多操作系統(tǒng)并沒有自帶py3k, 前段時間看消息, 貌似fedora要預(yù)裝py3k。
只要大部分操作系統(tǒng), 預(yù)裝py3k, py2應(yīng)該就會被丟棄了
網(wǎng)友評論2014-01-25 17:42
自己做著玩用到的大部分還是2.7。。因為很多科學(xué)計算庫不能很好地兼容3.0。。最近看老外吵得也很厲害。。
網(wǎng)友評論2014-01-25 17:43
你說的GAE?
網(wǎng)友評論2014-01-25 17:44
python3其實也沒啥 print加括號 強(qiáng)制unicode都可以理解 問題庫不兼容這受不了了
網(wǎng)友評論2014-01-25 17:53