精选 TOP45 值得学习的Python项目

时间:2023-04-02 12:16:08

精选 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

————— ————— ————— ————— 我是分割线 ————— ————— ————— —————