如果你已經完成了Python基礎語法的學習,想要知道接下來如何提高,那麼你得先問問自己你要用Python來做什麼?目前學習Python後可能的就業方向包括以下幾個領域,我把每個領域需要的技術作為了一個簡單的關鍵詞摘要。
說明:以下數據參考了主要的招聘門戶網站以及職友集。
職位 | 所需技能 | 招聘需求量 |
---|---|---|
Python後端開發工程師 | Python基礎 Django / Flask / Tornado / Sanic RESTful / 接口文檔撰寫 MySQL / Redis / MongoDB / ElasticSearch Linux / Git / Scrum / PyCharm |
大 |
Python爬蟲開發工程師 | Python基礎 常用標準庫和三方庫 Scrapy / PySpider Selenium / Appnium Redis / MongoDB / MySQL 前端 / HTTP(S) / 抓包工具 |
較少 |
Python量化交易開發工程師 | Python基礎 數據結構 / 算法 / 設計模式 NoSQL(KV數據庫) 金融學(兩融、期權、期貨、股票) / 數字貨幣 |
較大(一線城市) |
Python數據分析工程師 / Python機器學習工程師 |
統計學專業 / 數學專業 / 計算機專業 Python基礎 / 算法設計 SQL / NoSQL / Hive / Hadoop / Spark NumPy / Scikit-Learn / Pandas / Seaborn PyTorch / Tensorflow / OpenCV |
較大(一線城市) |
Python自動化測試工程師 | Python基礎 / 單元測試 / 軟件測試基礎 Linux / Shell / JIRA / 禪道 / Jenkins / CI / CD Selenium / Robot Framework / Appnium ab / sysbench / JMeter / LoadRunner / QTP |
大 |
Python自動化運維工程師 | Python基礎 / Linux / Shell Fabric / Ansible / Playbook Zabbix / Saltstack / Puppet Docker / paramiko |
較大(一線城市) |
Python雲平臺開發工程師 | Python基礎 OpenStack / CloudStack Ovirt / KVM Docker / K8S |
較少(一線城市) |
如果弄清了自己將來要做的方向,就可以開始有針對性的學習了,下面給大家一個推薦書籍的清單。
-
入門讀物
- 《Python基礎教程》(Beginning Python From Novice to Professional)
- 《Python學習手冊》(Learning Python)
- 《Python編程》(Programming Python)
- 《Python編程從入門到實踐》(Python Crash Course)
- 《Python Cookbook》
-
進階讀物
- 《軟件架構 - Python語言實現》(Software Architecture with Python)
- 《流暢的Python》(Fluent Python)
- 《Python設計模式》(Learning Python Design Patterns)
- 《Python高級編程》(Expert Python Programming)
- 《Python性能分析與優化》(Mastering Python High Performance)
-
數據庫相關
- 《MySQL必知必會》(MySQL Crash Course)
- 《深入淺出MySQL - 數據庫開發、優化與管理維護》
- 《MongoDB權威指南》(MongoDB: The Definitive Guide)
- 《Redis實戰》(Redis in Action)
- 《Redis開發與運維》
-
Linux / Shell / Docker / 運維
- 《鳥哥的Linux私房菜》
- 《Linux命令行與shell腳本編程大全》(Linux Command Line and Shell Scripting Bible)
- 《Python自動化運維:技術與最佳實踐》
- 《第一本Docker書》(The Docker Book)
- 《Docker經典實例》(Docker Cookbook)
-
Django / Flask / Tornado
-
《Django基礎教程》(Tango with Django)
-
《輕量級Django》(Lightweight Django)
-
《精通Django》(Mastering Django: Core)
-
《Python Web開發:測試驅動方法》(Test-Driven Development with Python)
-
《Two Scoops of Django: Best Practice of Django 1.8》
-
《Flask Web開發:基於Python的Web應用開發實戰》(Flask Web Development: Developing Web Applications with Python)
-
《深入理解Flask》(Mastering Flask)
-
《Introduction to Tornado》
-
-
爬蟲開發
-
《用Python寫網絡爬蟲》(Web Scraping with Python)
-
《精通Python爬蟲框架Scrapy》(Learning Scrapy)
-
《Python網絡數據採集》(Web Scraping with Python)
-
《Python爬蟲開發與項目實戰》
-
《Python 3網絡爬蟲開發實戰》
-
-
數據分析
- 《利用Python進行數據分析》(Python for Data Analysis)
- 《Python數據科學手冊》(Python Data Science Handbook)
- 《Python金融大數據分析》(Python for Finance)
- 《Python數據可視化編程實戰》(Python Data Visualization Cookbook)
- 《Python數據處理》(Data Wrangling with Python)
-
機器學習
-
《Python機器學習基礎教程》(Introduction to Machine Learning with Python)
-
《Python機器學習實踐指南》(Python Machine Learning Blueprints)
-
《Python機器學習實踐:測試驅動的開發方法》(Thoughtful Machine Learning with Python A Test Driven Approach)
-
《Python機器學習經典實例》(Python Machine Learning Cookbook)
-
《TensorFlow:實戰Google深度學習框架》
-
-
其他書籍
- 《Pro Git》
- 《Selenium自動化測試 - 基於Python語言》(Learning Selenium Testing Tools with Python)
- 《Selenium自動化測試之道》
- 《Scrum敏捷軟件開發》(Software Development using Scrum)
- 《高效團隊開發 - 工具與方法》
當然學習編程,最重要的通過項目實戰來提升自己的綜合能力,Github上有大量的優質開源項目,其中不乏優質的Python項目。有一個名為“awesome-python-applications”的項目對這些優質的資源進行了歸類並提供了傳送門,大家可以瞭解下。如果自學能力不是那麼強,可以通過網絡上免費或者付費的視頻課程來學習對應的知識;如果自律性沒有那麼強,那就只能建議花錢參加培訓班了,因為花錢在有人監督的環境下學習對很多人來說確實是一個捷徑,但是要記得:“師傅領進門,修行靠各人”。選擇自己熱愛的東西並全力以赴,不要盲目的跟風學習,這一點算是過來人的忠告吧。記得我自己剛開始進入軟件開發這個行業時,有人跟我說過這麼一句話,現在也分享出來與諸君共勉:“浮躁的人有兩種:只觀望而不學習的人,只學習而不堅持的人;浮躁的人都不是高手。”