精選 TOP45 值得學習的Python項目
來自博客園 牽只蝸牛去散步 精選 TOP45 值得學習的Python項目 推薦給大家
【導讀】熱門資源博客 Mybridge AI 比較了 18000 個關於 Python 的項目,並從中精選出 45 個最具競爭力的項目。我們進行了翻譯,在此一併送上。
這份清單中包括了各不相同的 20 個主題,以及一些資深程序員分享使用 Python 的經驗,值得收藏。Mybridge AI 的排名結合了內部機器評估的內容質量和各種人為因素,包括閱讀次數和閱讀時長等。
對於 Python 的初學者,我們推薦以下這些課程:
REST API:使用 Python,Flask,Flask-RESTful 和 Flask-SQLAlchemy 構建專業的 REST API [12,602 個推薦,4.6 / 5 星]
鏈接:
https://www.udemy.com/rest-api-flask-and-python/
演算法交易:用於財務分析和演算法交易的 Python,主要學習包括 numpy,pandas,matplotlib,quantopian,finance [8,077 個推薦,4.6 / 5 星]
鏈接:
https://www.udemy.com/python-for-finance-and-trading-algorithms/
年度開源 Python 項目 [平均 4,078 星]
鏈接:
https://medium.mybridge.co/30-amazing-python-projects-for-the-past-year-v-2018-9c310b04cdb3
機器學習年度最佳文章
鏈接:
https://medium.mybridge.co/learn-to-build-a-machine-learning-application-from-top-articles-of-2017-cdd5638453fc
Python 演算法
① 回顧 Python 互動式編碼中所要面對的挑戰(演算法和數據結構)
本文對演算法編碼和數據結構中的問題提出了簡單易懂又切實可行的方案。
作者:Donne Martin;[github-11811 星]
鏈接:https://github.com/donnemartin/interactive-coding-challenges
② Python 中演算法和數據結構的最小樣本
如何讓 Python 中的數據結構和演算法最小、最乾淨?
作者:keon;[github-10271 星]
鏈接:https://github.com/keon/algorithms
③ 最重要的 Python 演算法--Pygorithm
Pygorithm 是一個純 Python 風格編寫的模塊,通過導入所需的演算法,獲得相應的代碼、時間複雜性等。這是一個開始學習 Python 編程的好方法,能夠幫助初學者學習並實現 Python 中所有演算法。
作者:Satwik Kansal;[github-3156 星]
鏈接:http://pygorithm.readthedocs.io/en/latest/
Python 綜合指南
④ 一個有趣又鮮為人知的 Python 代碼片段集合—wtfPython
作者:Satwikkansal;[github-4,933 星]
鏈接:https://github.com/satwikkansal/wtfPython
Python 的腳本結構
⑤ 一個關於如何從 Python 腳本到打包項目的標準化指南
作者:Courtesy of Vicki
鏈接:http://veekaybee.github.io/2017/09/26/python-packaging
Python 中的列表
⑥ Python 列表生成器的教程
在這份教程中,你將能夠學習到如何在 Python 中有效地使用列表生成器來創建列表,替換(嵌套) for 循環以及使用 map(), filter(), reduce() 函數等。
文章首先簡單回顧了 Python 中列表的基本概念,並與 Python 中其他的數據結構進行比較。接著講解了列表生成器的學習。文章還講解了 Python 列表背後的數學知識,創建列表生成器的方法,以及如何在 for 循環或 lambda 隱函數中重寫它們。
作者:Karlijn Willems
鏈接:https://www.datacamp.com/community/tutorials/python-list-comprehension
Python 中的類
⑦ 如何使用 Dunder (Magic、Special) 方法來豐富你的 Python 類
Dunker 是 Python 中的一種特殊方法,通過雙下劃線開始和結束的形式存在,例如 __init__ 來豐富類的預定義方法。
作者:Dan Bader
鏈接:https://dbader.org/blog/python-dunder-methods
Python 中的網頁抓取
⑧ 如何使用 Python 中的 Scrapy、SQL 和 Matplotlib 等庫進行網頁抓取,並獲取網頁數據分析
你可以通過這篇文章學習到網頁爬取知識,並用於實踐中。
作者:ScrapingAuthority
鏈接:http://www.scrapingauthority.com/python-scrapy-mysql-and-matplotlib-to-gain-web-data-insights/
⑨ 高級的網頁抓取教程:繞過「403 禁止」,驗證碼等問題
作者:Evan Sangaline
鏈接:http://sangaline.com/post/advanced-web-scraping-tutorial/
⑩ 掌握 Python 的網頁抓取技巧來獲取你所需要的數據
作者:Lauren Glass 和 Hackernoon
鏈接:https://hackernoon.com/mastering-python-web-scraping-get-your-data-back-e9a5cc653d88
Python 中的自動化操作
? 如何使用 Twilio、Python 和 Google 自動化婚禮的進程
作者:Thomas Curtis
鏈接:https://www.twilio.com/blog/2017/04/wedding-at-scale-how-i-used-twilio-python-and-google-to-automate-my-wedding.html
? 如何用 Python 在 Medium 上找到有趣的人
作者:Radu Raicea 和 freeCodeCamp。
鏈接:https://medium.freecodecamp.org/how-i-used-python-to-find-interesting-people-on-medium-be9261b924b0
Python 中的 Bot
? 製作 Reddit+Facebook 的信息箱
作者:Yasoob Khalid
鏈接:
https://pythontips.com/2017/04/13/making-a-reddit-facebook-messenger-bot/
? 我在 Instagram 上用 Python 寫的開源機器人(讓我擁有了 2500 個粉絲,所花的伺服器成本只有 5 美元)
作者:TimG
鏈接:https://medium.freecodecamp.org/my-open-source-instagram-bot-got-me-2-500-real-followers-for-5-in-server-costs-e40491358340
Python 中的電子表格
? 權威指南:Python 的 Excel 教程
通過這個教程,你可以了解如何使用 Python 讀取和導入 Excel 文件,如何將數據寫入這些電子表格。
作者:Karlijn Willems
鏈接:https://www.datacamp.com/community/tutorials/python-excel-tutorial
? Python 和 Googgle 電子表格
作者:Brent Schooley
鏈接:https://www.youtube.com/watch?v=vISRn5qFrkM
Python 中的金融應用
? Python 中的金融:演算法交易
這是一份 Python 與金融應用的教程,在此你能學習到演算法交易的基本知識及相關內容。
作者:Karlijn Willems
鏈接:https://www.datacamp.com/community/tutorials/finance-python-trading
? Python 中的金融教程—股票價格及相關數據介紹
作者:Harrison Kinsley
鏈接:https://www.youtube.com/watch?v=2BrpKpWwT2A
? 用 Python 分析加密貨幣市場
比特幣市場是如何表現?加密貨幣價值突然出現高峰和低谷的原因是什麼?不同 altcoins 市場是不可分割的或基本獨立的? 我們如何預測接下來會發生什麼?
這篇文章將簡單地介紹如何使用 Python 來分析加密貨幣。文章通過一個簡單的 Python 腳本來檢索,分析和可視化不同加密貨幣上的數據。在這個過程中,文章還將揭示這些波動劇烈的市場行為以及一個有趣的演變趨勢。
作者:Patrick Triest
鏈接:https://blog.patricktriest.com/analyzing-cryptocurrencies-python/
Python 中的區塊鏈
? 學習並構建一個區塊鏈
毫無疑問,區塊鏈這項新穎的技術是計算的奇蹟。區塊鏈技術的出現引發了新的全數字貨幣,如比特幣和萊特幣,而這些貨幣並非由中央當局發行或管理。區塊鏈也以 Ethereum 這樣的技術形式革命化了分散式計算,並引入了智能合約等有趣的概念。
這篇文章將會幫助你學習並理解區塊鏈的工作原理。通過這篇教程,你將學習到一個功能強大的區塊鏈,並掌握它們的工作流程。
作者:Daniel van Flymen 和 Hackernoon
鏈接:https://hackernoon.com/learn-blockchains-by-building-one-117428612f46
? 如何構建一個最小的區塊鏈
本文將用少於 50 行的代碼(Python2)來創建一個最簡單、最小的區塊鏈。
作者:Gerald Nash
鏈接:https://medium.com/crypto-currently/lets-build-the-tiniest-blockchain-e70965a248b
Python 中的視頻合成
? 用 Python 構建一個視頻合成器
視頻合成器是利用音頻輸入來創建視覺信號的設備,自上世紀 60 年代以來,已有很長的歷史。
這篇文章將用 Python 編寫一個基本的視頻合成器,並使用 aubio 進行 Onset 目標檢測。
作者:Kirk Kaiser
鏈接:https://www.makeartwithpython.com/blog/video-synthesizer-in-python/
Python 的性能
? 用 Python 處理每秒 100 萬個請求
用 Python 每秒能夠達到 100 萬個請求嗎?為了節省伺服器價格,最近很多公司正在從 Python 向其他編程語言中遷移。但實際並不需要。
Python 社區最近在性能提升方面做了很多工作。CPython 3.6 通過新的字典提高了整體解釋器的性能。由於引入了更快的調用約定和字典查找緩存,CPython 3.7 將會更快。
對於數字處理任務,你可以使用 PyPy 進行代碼編譯。你還可以運行 NumPy 的測試套件,該測試套件現在已經改進了 Python 與 C 語言擴展的整體兼容性。在隨後的更新版本中,PyPy 預計將與 Python 3.5 兼容。
作者:Pawe? Piotr Przeradowski。
鏈接:https://medium.freecodecamp.org/million-requests-per-second-with-python-95c137af319
? 「Python 很慢,但我不在乎」
這篇文章將介紹一些關於 Python 中 asyncio 的內容,並討論有關 Python 速度的問題。
作者:Nick Humrich
鏈接:https://hackernoon.com/yes-python-is-slow-and-i-dont-care-13763980b5a1
? Python 中的緩存:如何緩存函數的結果
文章將介紹一種快捷的方法來加速 Python 記憶代碼。你將看到何時以及如何運用 Python 記憶代碼。記憶代碼優化你的程序,在某些情況下會加速你的代碼運行。
鏈接:
https://dbader.org/blog/python-memoization
Python 中的 Django 框架
? 七步驟帶你完整地學習 Django
Django 是用 Python 編寫的一個 Web 框架。這篇文章是介紹 Django 基礎知識的系列教程,共分為七個部分,將分別從安裝,準備開發環境,模型,視圖,模板,URL 到更高級的主題(如遷移,測試和部署)出發,詳細探討所有的基本概念。
作者:Vitor Freitas
鏈接:https://simpleisbetterthancomplex.com/series/2017/09/04/a-complete-beginners-guide-to-django-part-1.html
? 使用 Django 構建 REST API 的測試驅動方法:第一部分
這篇文章將介紹如何利用 Django 來構建一個 REST API 的測試驅動,並詳細介紹了每個步驟。
作者:Jee Githinji Gikera 和 Scotch Development
鏈接:https://scotch.io/tutorials/build-a-rest-api-with-django-a-test-driven-approach-part-1
Python 中的 Flake
? OI』List 規則
這篇博文中我們將介紹 Flake8(pyflakes,pycodestyle 和 mccabe)中的每個規則及相對應的示例。
鏈接:
https://lintlyci.github.io/Flake8Rules/
? 使用 Python 和 Flask 開發 RESTful API
本文包括以下幾部分:
- 為什麼用 Python?
- 什麼是 Flask?
- 引導 Flask 應用程序
- 用 Flask 創建一個 RESTful 端點
- 用 Python 類映射模型
- 用 Marshmallow 進行序列化和反序列化對象
- Dockerizing Flask 應用程序
- 用 Auth0 保護 Python API
作者:Bruno Krebs
鏈接:https://auth0.com/blog/developing-restful-apis-with-python-and-flask/
Python 中的 Numpy
? 從 Python 到 Numpy
本文通過一種新穎的方式,向量化地集中講解了如何從 Python 遷移到 Numpy 的學習。另外,本文還包括一些很少提到的使用技巧。
鏈接:
http://www.labri.fr/perso/nrougier/from-python-to-numpy/
? 探索 Python 每種工具包的行長度
本文探索了 Python 的流行包,如 NumPy,SciPy,Pandas,Scikit-Learn,Matplotlib,AstroPy 等。
作者:Jake VanderPlas
鏈接:http://jakevdp.github.io/blog/2017/11/09/exploring-line-lengths-in-python-packages/
Python 中的 NashPy
? NashPy 教程—建立並找到一種簡單的遊戲平衡
博弈論是用來研究理性主體之間的戰略互動:當雙方試圖採用對各自最有益的方式來完成某件事情時,對雙方互動行為的研究。這篇文章將採用 Python 中的 NashPy 來研究這種雙方博弈的互動行為。
鏈接:
http://nashpy.readthedocs.io/en/latest/tutorial/
Python 中的馬爾可夫過程
? 用 Python 模擬 Chutes 和 Ladders
這篇文章將通過 Chutes 和 Ladders 遊戲的例子,建立模型並闡述馬爾可夫過程的原理。整個分析過程附有 Python 源碼,感興趣的讀者可以嘗試一下。
作者:Jake VanderPlas
鏈接:http://jakevdp.github.io/blog/2017/12/18/simulating-chutes-and-ladders/
Python 中的數據分析
? 用 Python 分析美國聯邦政治行為
科學、政治、個人意見和社會政策的交集可能呈現相當複雜的情況。思想和學科的交匯點通常充斥著有爭議的觀點和基於信仰但缺乏經驗證據的議程。這時,數據科學在這方面就顯得特別重要,因為它提供了一種以實際事實為基礎的考察世界的方法,能夠深入了解我們今天所面臨的一些最重要的問題。
這篇文章我們將用 Python 來分析美國聯邦政府的一些政治行為,深入了解政治背後所隱藏的故事。
作者:Patrick Triest
鏈接:https://blog.patricktriest.com/police-data-python/
? 用 Python 分析 1000+ 的希臘葡萄酒
作者:Florents Tselai
鏈接:https://tselai.com/greek-wines-analysis.html
? 如何用 Python 生成 FiveThirtyEight 圖
這篇文章將用 Python 的 matplotlib 和 pandas,來學習並查看 FiveThirtyEight(FTE)可視化的核心部分,並教會你使用 Python 來為自己的數據進行可視化。
作者:Josh Devlin
鏈接:https://www.dataquest.io/blog/making-538-plots/
? 使用 Apache Spark 和 Python 為 8000 萬 Amazon 產品進行評價打分
作者編寫了一個簡單的 Python 腳本,將亞馬遜產品評論數據集中的每類評分數據進行整合,並對這些 Amazon 產品評論數據進行分析打分,以發現用戶的喜好。
作者:Max Woolf
鏈接:http://minimaxir.com/2017/01/amazon-spark/
? 使用 Python 進行地理空間分析
作者:Matthew Rocklin
鏈接:https://matthewrocklin.com/blog//work/2017/09/21/accelerating-geopandas-1
? 星球:從太空中了解亞馬遜,來自 Kaggle 頭獎獲獎者的採訪
文章採訪了 Kaggle 的「星球:從太空中了解亞馬遜」競賽的獲獎者,內容包括他如何使用 11 個微調的卷積神經網路,標籤關聯的結構模型,以及如何避免過擬合現象等。
作者:Edwin Chen
鏈接:http://blog.kaggle.com/2017/10/17/planet-understanding-the-amazon-from-space-1st-place-winners-interview/
Python 入門
? 從零開始學習 Python
Python 的創建者 Guido van Rossum 曾說過,「Python 是一個高級編程語言,其核心設計理念是讓代碼具有高度的可讀性和簡單的語法,程序員可以用幾行代碼表達自己的想法。」
作者:TK
鏈接:https://medium.freecodecamp.org/learning-python-from-zero-to-hero-120ea540b567
? 重要的 Python 練習清單
這篇文章列出了一些重要的練習項目,包括 Python 語言本身和標準庫的練習。文章中還有 Python 中不同主題模塊的知識。
作者:Ynon Perek
鏈接:https://www.ynonperek.com/2017/09/21/python-exercises/
? API 的設計原則:先思考再編碼
API 是定義應用程序介面的通用術語,換句話說,就是用戶(人或機器)與程序的交互介面。在 Web 開發世界中,API 通常是一個網站,其中包含一系列端點,用於響應客戶端請求和結構化文本數據。這篇文章將告訴你為什麼以及如何設計一個正確的 API,如何將自己的思想植入到 API 的設計中來構建屬於你自己的 API。
作者:Jonatas Baldin
鏈接:https://www.ckl.io/blog/api-design-think-first-code-later
? Python 機器學習指南
本文將通過清晰地解釋和有效的練習,來幫助你深度理解相關的機器學習演算法。
作者:Conor Dewey
鏈接:https://medium.freecodecamp.org/the-hitchhikers-guide-to-machine-learning-algorithms-in-python-bfad66adb378
? 如何學習 Python 編程:6 位經驗豐富的 Python 開發者分享了他們的觀點
對於當下熱門的 Python 語言,有太多的教程、書籍、視頻和博客文章資源,然而如此多的冗餘資料,你該如何選擇最佳的方式開始你的 Python 學習之旅呢?這篇文章列出了 6 位 Python 專家分享的學習經驗,相信這對於迷茫中的你來說,將受益匪淺。
鏈接:
https://coolpythoncodes.com/best-way-learn-python-programming
? 如何用 Python 實現強大的數據分析
Python 是數據分析的最佳編程語言,這得益於它自帶的依賴庫。依賴庫能夠存儲,操縱數據,並從數據中獲得核心信息,因而在數據科學領域被廣泛使用並展現出強大的功能。本文介紹了 Python 在數據科學領域的應用歷史以及最新發展。
作者:Jake VanderPlas
鏈接:https://www.youtube.com/watch?v=9by46AAqz70
原文鏈接:
https://medium.mybridge.co/python-top-45-tutorials-for-the-past-year-v-2018-1b4d46c9e857
Github 鏈接:
https://github.com/Mybridge/learn-python
推薦閱讀:
※利用python完成大數據建模前期數據準備
※Parsec 的遷移(二)Pyparsec 的 Monad化
※敲敲級簡單的鑒別H圖片的小程序
※visual studio code寫Python無法自動補全?
※Python工程師面試必備25條Python知識點