如果你是一個初學者,或者你以前接觸過其他的編程語言,你可能不知道,在開始學習python的時候都會遇到一個比較讓人很頭疼的問題:版本問題!!是學習python2 還是學習 python3 ?這是非常讓人糾結的!
搜索一下便會發現python3 和 python2 是不兼容的,而且差異比較大,到底學習哪個版本呢?下面就來為大家分析一下:
其實python是linux上最常用的軟件之一,但是linux目前的版本大部分還是使用python2的,而且,在linux上依賴python2的程序更多一些,所以 Python3 要代替 python2 成為主流還需要幾年的時間。
當初設計 Python3 的目的是沒有代碼兼容的包袱的情況下改進 Python,但個人認為改進得還不夠大刀闊斧,沒有徹底改進一些bug,還有不少的 wart 錯過了改進機會,因此造成的語法不兼容的地方也沒最初設想的多。
人們幾年摸索慢慢下來,大部分的情況下可以直接寫 2/3 兼容的代碼,也有 six 這類的兼容層可用。
所以先學 Python2 還是 Python3 都不是問題,或者說都是問題。
目前現狀是實際應用中大部分暫不考慮 Python3,有的時候注意寫兼容 2/3 的代碼。用 Python2 為主的寫新代碼時要考慮以后遷移到 Python3 的可能性。
無論學 Python2 還是 Python3,都需要注意另外一邊的不同點:所幸就是這些不同點很容易掌握,只有一個 unicode encoding 對較多人造成困擾(同時也是很多 web 相關庫移植的主要障礙,3.3 重新支持 u'',情況大大改善了)
學習python2 還是 python3 、使用python2 還是 python3 需要看具體情況而定
所以我建議:
1. 如果是你在企業中,需要用到python而學習python的話,那就要看企業的應用python的版本進行學習;
2. 如果想要更多的成熟解決方案,最少的bug,最穩定的應用那就用python2 ;
3. 如果你是在讀大學的學生,那我建議你學習python3,等到畢業的時候或許python已經成為了主流。