許多剛入門 Python 的朋友都在糾結的的問題是:我應該選擇學習 python2 還是 python3?
對此,咪博士的回答是:果斷 Python3 !
可是,還有許多小白朋友仍然猶豫:那為什么還是有人推薦我學習 Python2 呢?
其實,無外乎以下一些原因(但這些理由經咪博士稍微一推敲就站不住腳了):
1. 無論是 Python 還是 Pip 的下載量,都是 2 比 3 多,可見 2 仍然是主流
錯!造成 2 的下載量比 3 多的原因很多,但其中很重要的一條是,絕大多數操作系統(Linux 發行版)默認安裝的仍然是 Python 2。人都是有惰性的,許多人懶得折騰就直接用了2 了。但是,2 在下降,3 在上升這是不爭的事實。擁抱未來才是王道啊。
2. Python 2 和 3 不兼容,學了 3 還得學 2
錯!Python 提供了許多輔助的庫,可以讓你分分鍾寫出兼容 3 和 2 的代碼,你要做的只是引入幾個包而已,幾乎不用修改代碼。實在萬不得已非得用 2,你有 3 的基礎,幾乎不需要什么額外的學習,也能立刻上手 2。
3. 許多庫還停留在 Python 2,Python 3 用不了
錯!說出這話的這位仁兄,你是有多久沒有關注 Python?太不了解行情了。
根據 py3readiness 的最新統計結果,Pip 上最流行的(下載量最高的)前 360 個庫,已經有345 個支持 Python 3 了。
其中,只剩下 15 個(大約 4%)庫暫時還不支持 Python 3。你究竟是有多執着,非要等到 100% 才肯用 3?
當然,有些朋友還是不放心,這里咪博士根據 Python 的不同用途,仔細檢查了每個領域最常用的包(有一些沒有在 py3readiness 中羅列出來),它們(具體見文章末尾)無一例外,全部支持 Python 3 !
你的工作能有多特別?非得用 3 才能搞定?即使真遇到這樣的情況,使用 virtualenv, conda 這些成熟的工具,分分鍾在你的機器上另起一個 2 的環境,和 3 完美兼容,你還需要擔心什么?
擁抱 Python 3 吧!人生苦短,我用 Python 3。
附:以下常用 Python 庫,經咪博士檢查,都已經支持 Python 3 了
爬蟲相關
- scrapy
- lxml
- requests
- selenium
Web 開發
- Django
- Flask
- Bottle
網絡編程
- Twisted
- Tornado
數據庫
- SQLAlchemy
- peewee
- pony
- pymongo
- redis
機器學習
- Scikit-learn
- gensim
- nltk
深度學習
- Tensorflow
- Theano
- Caffe
科學計算/數據分析
- numpy
- Scipy
- pandas
- matplotlib
- seaborn
- statsmodels
- sympy
圖像處理
- scikit-image
- Pillow
- opencv
運維相關
- psutil
- IPy
- dnspython
- rrdtool
- playbook
桌面應用
- PyQt
- wxPython
- Pywin32
游戲開發
- Pygame
- PySDL2
【原文鏈接】http://www.ipaomi.com/2017/10/10/python-初學者-入門-應該學習-python-2-還是-python-3?/