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