编写 Python 代码的乐趣应该是看到简短、简洁、易读的类,这些类用少量清晰的代码来执行大量的操作,而不是那些让读者厌烦的大量琐碎代码。
在相当长的一段时间内,世界各地的开发人员在他们的大多数项目中都倾向于使用 Python。编程语言的易用性,它在实时和非实时系统中的效率,以及它丰富的“救急”库集合,是开发人员喜欢 Python 的重要原因。
像Python这样的编程语言可以让我们自由地将梦想中的项目变成现实,展示我们的才华。这就是为什么我们要探索 GitHub 上的一些顶级 Python 项目。这些项目不仅能给你灵感,也能让你领略到用创新思维和Python可以做什么。
你知道吗?
- Stackoverflow 认为 Python 是最受欢迎的语言,这意味着大多数开发人员都使用 Python。
- Python 是 GitHub 上第二流行的语言,也是机器学习最流行的语言。
GitHub上的顶级Python项目
GitHub 显然是绝大多数在线代码的集中地。Python 作为一种令人惊叹的通用编程语言,已经被成千上万的开发人员用来构建各种有趣和有用的项目。在本文中,我们将介绍一些使用 Python 构建的GitHub上最好的项目。
1.Manim
Stars: 26.4k
开发者:Grant Sanderson
GitHub链接: https://github.com/3b1b/manim
Manim 代表数学动画引擎。这个项目背后的理念是让人们更容易地将有趣和直观的动画与数学教材中的图形和图表相结合,从而打破学习数学必须枯燥乏味的刻板印象。
Grant 经营着一个名为3Brown1Blue(国内俗称:3黄1绿)的YouTube频道,在那里他使用Manim库来创建和控制这些动画,向观众教授更高的数学。使用 manim,你还可以创建动画视频,并精确控制用于图表和插图的动画。
Youtube链接: https://www.youtube.com/channel/UCYO_jab_esuFRV4b17AJtAw
B站链接:https://space.bilibili.com/88461692
2. DeepFaceLab
Stars:20.7k
开发者:iperov
GitHub 链接:https://github.com/iperov/DeepFaceLab
DeepFaceLab 是本文中 GitHub 上最有趣的 Python 项目之一。DeepFaceLab 是一种工具,可以创建深层假图像和视频,它允许你做很多有趣的事情,如改变、取消年龄和交换脸。为了让事情更有说服力,你甚至可以改变他们的语言,尽管这需要精通视频编辑软件。
开发者声称,互联网上超过95%的深度假视频都是用这个工具制作的。你可以在该项目的 GitHub 页面上找到设置指南和一堆面孔数据集,赶紧玩起来吧~
3.Airflow
Stars:18.6k
开发单位:Apache软件基金会
GitHub链接:https://github.com/apache/flow
Airflow 是一个由Python提供支持,Apache 软件基金会开发的开源工作流管理工具。Airflow允许我们在工作流中执行一系列活动,例如编写、计划和监视等活动。如果把工作流定义为代码时,管理、测试和协作都会变得更加容易。
它提供了可伸缩性、动态管道生成和可扩展性。简单的用户界面使使用 Airflow 的工作非常流畅,其强大的集成能力与其他工具、服务有助于最大限度地节省时间。Airflow 正被业内一些大牌公司使用,如Adobe、Lyft、Slack、Expedia等。
4. GPT-2
Stars:13.4k
GitHub 链接: https://github.com/openai/gpt-2
GPT-2 是一个庞大的基于转换器的语言模型,它根据同样庞大的数据集(确切地说,来自 80 亿多个网页的文本)进行训练。目标是什么?当从上下文中给定一组或之前的所有单词时,预测下一个单词。
简单地说,你只需要给 GPT-2 一些简短的词语,语言模型就能预测并生成质量不错的长文。
GitHub 存储库包含 OpenAI 论文“语言模型是不受监督的多任务学习者”的代码和模型。
5.XSStrike
Stars:8.5k
开发者:Somdev Sangwan
GitHub 链接:https://github.com/s0md3v/XSStrike
跨站点脚本(又名 XSS)是一个漏洞,对网站来说可能非常烦人和有害。通过从客户端注入恶意代码,攻击者可以对网站和数据造成无法控制的损害。s0md3v 的 XSStrike 本质上是一个 XSS 检测套件,它本身是独一无二的。
开发人员声称,他的工具不是简单地测试随机有效负载,而是分析网站并生成具有工作效果的专门工程有效负载。此工具的一些各种功能包括:
- 上下文语境分析
- 强大的模糊引擎
- 支持多线程分析
- 支持从文件中消除有效负载
- 定制的 HTML 和 JavaScript 解析器
- 扫描任何过时的 Javascript 库
6. 谷歌图片下载
Stars:7.1k
开发者:Hardik Vasa
GitHub 链接:https://github.com/hardikvasa/google-images-download
Hardik Vasa 的脚本允许我们一次性从 Google 上下载数百张图片到本地计算机。此工具的工作方式是安装库、使用命令、将所需的关键字作为参数,以及让该工具发挥其神奇的作用。本质上是在google images 索引中搜索带有指定关键字的图片,找到后就进行下载。
7.Photon
Stars:7k
开发者:Somdev Sangwan
GitHub链接:https://github.com/s0md3v/Photon
Photon 是一个使用 Python 构建的功能强大且易于使用的 web 爬虫程序。s0md3v 的轻量级和快速爬虫遵循开源智能框架的指导方针和方法,该框架允许收集和分析从开放或公共来源获取的信息。
Photon 可以从中抓取信息的许多来源包括:
- URL,包括带参数的URL
- 社交媒体账户、电子邮件
- pdf、png、XML文档等文件
- 子域
- JavaScript文件
Photon 以有组织的方式保存所有提取的信息,甚至可以导出为 JSON 文件。该工具还提供了各种选项来自定义它的工作方式,比如控制超时,排除一些 url 等等。
8.NeuralTalk
Stars:5k
开发者:Andrej Karpathy
GitHub链接:https://github.com/karpathy/neuraltalk2
NeuralTalk 的核心是 Python 和 NumPy 中使用多模式递归神经网络的图像字幕项目。由于技术的改进和更好的硬件支持,开发人员发布了 NeuralTalk2,它比原来的 NeuralTalk 更好、更快。
NeuralTalk2使用批处理实现,并且仍然使用 RNNs ,基于Torch,可以在 GPU 上运行,同时支持CNN 微调。虽然开发人员已经弃用 NeuralTalk,但该项目仍然可以在 GitHub 上进行查看。
9.Xonsh
Stars:3.9k
GitHub链接:https://github.com/xonsh/xonsh
可以将 Xonsh 看作是一种由 Python 支持的跨平台外部语言。因为 Python 与 Xonsh 的深度集成,Xonsh 可以把 Python 的工作(甚至是最基本的任务)完成得更好。
使用 Xonsh,不需要输入“$echo 2+2”,只使用 $2+2 ,也可以得到正确的结果。
开始使用 Xonsh shell 也非常简单,只要用适合你的环境的命令进行安装就可以了。Xonsh 可用于许多包管理器,包括pip、Conda、Apt、Brew等。Xonsh 具有非常容易编写脚本,有一个带有类型化变量的大型标准库等特性。
10. Rebound
Stars:3.3k
开发者:Jonathan Shobrook
GitHub 链接: https://github.com/shobrook/rebound
编译器错误非常令人厌烦,唯一的解决方案是直接进行堆栈溢出或阅读文档。Jonathan Shobrook和他的著名工具 Rebound,已经找到了一种方法,可以让我们的工作变得更容易,同时还可以处理那些讨厌的编译器错误。
Rebound的工作方式是,使用该工具运行文件,它会检查文件中存在的任何编译器错误,并获取它能找到的任何相关的堆栈溢出线程。
Rebound的能力,加载线程在终端和浏览器中可以是一根救命稻草,不仅你是新手,还是老程序员,都可以节省大量的时间进行无休止地寻找答案。目前,Rebound 仅支持 Python、Node.js、Ruby、Golang 和 Java。
总结
创意也是没有极限的,在GitHub 上,只有这样的项目能完美展示我们的创造力和才能。但这只是冰山一角,因为Python可以用来执行更加庞大复杂的项目任务,前提是你拥有专有的技术并清楚地了解自己想要实现的目标。随着 Python 的不断发展,越来越多的开发人员用其构建令人惊叹的项目,就像我们上面提到的那些项目。
好了,如果你对Python兴趣十足,又找不到好项目练手,不妨试试上文介绍的项目,肯定能让你大开眼界,从而打开思路!