GitHub 上适合新手的开源项目(Python 篇)_从github上找到一个高标星开源python程序。深入介绍该程序的功能、流程、代码结构-程序员宅基地

技术标签: python  github  

作者:HelloGitHub-卤蛋

随着 Python 语言的流行,越来越多的人加入到了 Python 的大家庭中。为什么这么多人学 Python ?我要喊出那句话了:“人生苦短,我用 Python!”,正是因为语法简单、容易学习,所以 Python 深受大家喜爱。(Python!Python!Python!)

Python 初学者在迈过安装编程环境和基本语法的门槛 ,准备大展身手的时候,可能突然就会进入迷茫期:不知道做些什么、再学些什么。然后对编程的兴趣就会慢慢消退,找不到坚持下去的理由,从而慢慢淡忘之前学会的编程知识。所以找到自己感兴趣、能够跟着动手和学习的 Python 项目是特别重要的,这样才能把学会的 Python 知识用起来,不断地提高。最终从新手晋升为高手!

兴趣是最好的老师,HelloGitHub 就是帮你找到编程的乐趣。

这里是 HelloGitHub 的《GitHub 上适合新手的开源项目》系列,共计 5 篇文章:

  1. C++ 篇
  2. Python 篇
  3. Go 篇
  4. Java 篇
  5. JavaScript 篇

本期是 Python 篇,下面我将从 HG 推荐过的 197 个 Python 开源项目中,精心筛选出 7 个最适合 Python 新手学习和把玩的开源项目。这些项目包括:

  • 从零开始学也不用愁的 Python 教程
  • 让你惊呼 Python 还可以这样用的秘籍(大开眼界)
  • 轻轻松松就能跑起来(满满成就感)
  • 好玩有趣又能学到东西的项目(编程的乐趣)

我会尽力做到涵盖每一个刚入门阶段在找开源项目的小伙伴。声明:

  • 不纠结项目是 Python2 还是 3
  • 我最怕推荐的项目过多让读者“挑花眼”导致都没学好,所以就选了 7 个项目
  • 欢迎吐槽和反馈,不定期更新。所以本文暂且称之为 Python 篇 1.0

注意: 为了方便大家学习,我把这些项目整理好放到网盘上供大家下载学习(地址在最下面),另外大家也可以直接 clone 项目。

但不管以哪种方式下载,我都希望大家可以去给这些 GitHub 上的开源项目点一个 star ,让作者感受到大家的支持和喜爱。我在这里提前替作者感谢大家了,爱你们呦~️

发动引擎~

一、教练,我想学 Python

车上有座,坐满就发车。

1.1 有编程基础:explore-python

《Python 之旅》这本开源书虽然是入门级但并不是“保姆级”,如果你觉得手把手教你安装 Python 之类是浪费时间,那么我推荐 explore-python 这个项目。所以,如果之前学过其它编程语言,自己能解决安装环境等问题。那你可能就会和我一样喜欢它:

  1. 大纲:直观的脑图展示,结构清晰完整,讲的都是重点和常用知识
  2. 内容:代码多于文字,运行示例代码帮助领悟+简短文字点拨,可能代码写的久了,看代码感觉比文字舒服
  3. 排版:舒服+讲究,写给程序员的 Python 书籍

1.2 没有编程基础:Python-100-Days

Python-100-Days 就是我上面说的“保姆级”教程,他的内容面面俱到包括了 Python 开发的方方面面,手把手地一步步的讲 Python 技术。面向没有编程基础想学 Python 的人群,但它不是只教会你 Python 基本语法就结束了。还有呐:Python 进阶知识、Linux 基础知识、数据库知识、Web 基础和框架、爬虫和数据分析、机器学习等。《真·一个项目学会 Python》


说无妨: Python 入门的教程都很简单,但是有毅力能坚持读完和有耐心动手敲完每一个例子人不简单。

二、大神,我想学好 Python

车速太快,请坐稳扶好。

2.1 先查收这份指南:python-guide

首先感谢译者们的辛勤付出,降低了《Python 最佳实践指南》这份指南的阅读门槛。如果你想把 Python 玩好,但又不知道该从哪些方面着手提高,那这份指南一定可以帮你解决困惑。该指南介绍了以下几个方面:开发环境、常用工具、代码风格、项目结构、使用场景等,提高 Python 相关的综合素养:用的优雅,玩的溜。这个项目不管是作者、贡献者还是译者们,都是 Python 社区的“老司机”,老司机带你飞的机会来了!

2.2 再翻烂这本秘籍:python3-cookbook

如果说每一个 Python 问题或需求就是一次进攻的话,那《Python Cookbook》就是破解进攻招式的武功秘籍。当你对用 Python 处理一个问题没有思路或者感觉可能会有更好的方法和写法时,翻翻这本书吧。不信你就试试躺着随便翻一页看,看着看着你就能坐起来,并且嘴里念叨着:“xxx,还能这么写?我得去试试”。别笑,真事儿我干过好几次了。


** 说无妨: ** 不是买两本书、看几个开源项目简介就可以进阶,只有日积月累才可以从量变到质变,完成进阶。这个过程没有办法手把手地教,因为没人可以一直给你讲以后你会遇到的所有问题。所以,你只能抓住每一个可以提高机会和知识点,像救命稻草一样拼命的抓紧,把知识点掰开揉碎的融会贯通。

三、老师,我想和你一起玩 Python

这车真帅,我也想坐上去试试。

3.1 玩一个不过瘾:free-python-games

真·入门级 Python 游戏集合库。都是些简单的小游戏,比如:贪吃蛇、迷宫、Pong、猜字等,运行简单(有些不需要安装依赖)、代码少且易读。用游戏开启的你 Python 项目之旅,玩完再学源码,其乐无穷啊。源码都在 freegames 目录下,每一个 py 文件就是一个游戏,比如 guess.py 就是猜字游戏的源码。安装运行的命令如下:

pip install freegames
python -m freegames.maze # freegames.游戏名

3.2 Windows 下的按键精灵工具:KeymouseGo

Python 实现的精简绿色版按键精灵。记录用户的鼠标、键盘操作,自动执行之前记录的操作,可设定执行的次数。在进行某些简单、单调、重复的操作时,使用该软件可以十分省事儿。只需要录制一遍,剩下的交给 KeymouseGo 来做就可以了。

3.3 Linux 下优雅的 HTTP 请求工具:httpstat

一个更加漂亮展示 HTTP 请求状态和耗时的 Python 命令行工具。它美化了 curl 的结果,使得结果更加可读和直观,还可以显示 HTTP 请求的每个过程的耗时。最主要它无依赖、兼容 Python3、就一个文件才 300 多行代码,非常适合新手阅读源码。效果如下图:

上面这些开源项目很有趣,而且运行简单,不会让你卡在运行代码这一步。最后分享下我运行 Python 开源项目的三板斧招式:

  • 安装依赖:pip install -r requirements.txt
  • 启动文件:通常为 mainrun项目名的同名文件py 文件
  • 运行出错:拿着异常信息去项目 issues 区搜,没有找到就去问搜索引擎

说无妨: 把项目运行起来不是终极目的,要阅读源码然后按照自己的想法修改代码最后增加或修改功能(提 PR),这才能算是玩好了。

四、最后

看完这篇文章,如果只记住有哪些适合新手学习的开源项目,那不会让你有任何技术上的提升,就算看十遍也不会提高。只有去看、去用、去学文中推荐的项目,才会提高技术。

新手入门 Python 简单,迷茫的进阶期长,持续关注 HelloGitHub 帮你找到编程的乐趣,找到坚持下去的理由和前进的方向。这里是 说无妨 的卤蛋:“欢迎给我留言告诉我你是否喜欢本文,或者批评和反馈我都会虚心接受,改不改…看心情。 ”

网盘链接: https://pan.baidu.com/s/1SX3GjqZPTWRvVkwUk1OXag 密码:2eev

如果你是在校大学生或研究生热爱编程、开源,喜欢讨论和学习技术相关的内容,那么来 HelloGitHub 的大学生开源俱乐部吧!你们的编程路才刚开始 HG 想陪你们走一段。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/a419240016/article/details/109567269

智能推荐

FTP SFTP TFTP的区别_sftp依赖tftp吗-程序员宅基地

文章浏览阅读1.5k次。转自 : http://blog.csdn.net/sztsian/article/details/6640832FTP 是完整、面向会话、常规用途文件传输协议。而 TFTP 用作 bones bare - 特殊目的文件传输协议。 交互使用 FTP。 TFTP 允许仅单向传输的文件。 FTP 提供身份验证。而TFTP 不。 FTP 使用_sftp依赖tftp吗

idea对CPU的占用率过大问题的解决_idea process total cpu usage-程序员宅基地

文章浏览阅读2.3w次,点赞6次,收藏14次。背景:昨晚有一次敲完代码运行完程序后,idea非常卡顿,连输入代码都不能进行,因为有点晚并且累了,所有就关了电脑,今天早上再次打开idea,还是一样卡顿,因为idea的试用期明天就到期了,所有就先破解了idea,破解完之后,还是非常流畅的,但是一运行程序就拉胯了,就先百度看一下解决方案,以下几个解决方案试了,基本问题还是没有解决,就在群里问了几个大佬,方案不是重装系统就是换电脑,同时开始了电脑的配置讨论,重装系统和换电脑的什么是不可能的,所有只有自己慢慢摸索了。1 修改idea配置文件安装目录下的bin_idea process total cpu usage

32位的虚拟地址翻释成32位的物理地址_请分析物理地址 所对应的32位数据。-程序员宅基地

文章浏览阅读2.7k次。32位的虚拟地址翻释成32位的物理地址 自386开始,IA-32处理器开始支持分页机制。分页机制的主要目的是高效地利用内存,按页来组织和管理内存空间,把暂时不用的数据放到外部存储器(通常是硬盘)上。在启用分页机制后,操作系统将将线性地址空间划分为固定大小的页面(4kb、2MB、4MB)。每个页面可以被映射到物理内存或外部存储器上的虚拟内存文件中。 下面就介绍一下WINDOWS_请分析物理地址 所对应的32位数据。

Bootstrap datepicker 在弹出窗体modal中不工作-程序员宅基地

文章浏览阅读291次。解决办法在 show 方法后面 添加 下面一段代码 $('#modalCard').modal('show');—例子 打开 弹出窗体//$('#modalCard').modal('hide');$('#modalCard').on('shown.bs.modal', function () {//$('.input-group.date').datetimepicker..._"$(\".input-group.date\").datetimepicker({format"

Codeforces Round #108 (Div. 2)_vasya, or mr. vasily petrov is a dean of a departm-程序员宅基地

文章浏览阅读167次。文章目录[A Marks](https://codeforces.com/contest/152/problem/A)反思题意实现Code单词[B Steps](https://codeforces.com/contest/152/problem/B)反思题意实现Code[C Pocket Book](https://codeforces.com/contest/152/problem/C)反思题意实现CodeA MarksVasya, or Mr. Vasily Petrov is a dean o_vasya, or mr. vasily petrov is a dean of a department in a local university.

解决重装win10系统找不到驱动器_重装系统时我们找不到任何驱动器-程序员宅基地

文章浏览阅读3.8w次,点赞19次,收藏111次。重装win10系统找不到驱动器的原因是:英特尔第十一代处理器采用了intel vmd技术,在此技术下安装系统时想找到驱动器,必须在安装过程中加载IRST驱动程序步骤如下:首先,下载IRST驱动程序(1)、进入电脑厂家官网输入电脑型号或编号搜索(2)、进入该设备界面后,点击表明是下载驱动的超链接(3)、在能下载驱动的界面下找到IRST驱动程序并下载然后,将下载的IRST驱动程序解压到拥有win10镜像的U盘中..._重装系统时我们找不到任何驱动器

随便推点

fastapi之token验证_fastapi+vuejwt登陆token验证-程序员宅基地

文章浏览阅读7.7k次。fastapi之token验证概述全局依赖概述官方文档里面提供了使用jwt的方式进行的验证比较复杂,这里提供了一种原理相同,但是方式更简单的验证方式,一般更常见于开放api接口的时候的验证使用全局依赖创建一个文件存放全局依赖:# depends.pyimport hashlibimport hmacfrom fastapi import HTTPException, Header..._fastapi+vuejwt登陆token验证

获取win10计算机所有权限,如何获得管理员权限 教您win10获取管理员所有权限的方法。...-程序员宅基地

文章浏览阅读1.9w次,点赞3次,收藏9次。有时操作电脑时,出现权限不够的提示,明明是我们就是使用者呀,却不够权限。如何获得管理员权限呢?所以今天小编教您win10获取管理员所有权限的方法。1、首先在桌面上鼠标右键点击“此电脑”,再点“管理”。2、在左侧点开“本地用户和组”,再点“用户”,然后在右侧鼠标右键点击“Administrator”,再点属性。3、打开后,取消勾选“该账户已禁用”。然后点应用,再点确定。#f#4、在桌面上新建文本文档..._获取管理员所有权限

解决 IntelliJ IDEA 安装后界面消失,再次打开后界面不动_workspace option is deprecated (implementationclas-程序员宅基地

文章浏览阅读4.4k次,点赞12次,收藏15次。解决 IntelliJ IDEA 安装后界面消失,再次打开后界面不动  为了能解析 JDK 17,笔者不得不下载当前最新版的 IntelliJ IDEA,结果在安装完 IntelliJ IDEA 之后,刚点击试用,结果 IntelliJ IDEA 突然就消失了,但使用任务管理器查看,发现 IntelliJ IDEA 仍然在后台运行。于是笔者手动在任务管理器中结束 IntelliJ IDEA 的进程,然后再次打开 IntelliJ IDEA,结果 IntelliJ IDEA 就在初始界面上呆滞不动了。  _workspace option is deprecated (implementationclass=tv.twelvetone.gradle.plu

(最小割求最小割集)poweroj2883病毒侵染_最小割集答案-程序员宅基地

文章浏览阅读270次。poweroj2883病毒侵染思路:寻找割掉kkk条边,使∏i=1kwi\prod\limits_{i=1}^{k}w_ii=1∏k​wi​最小,我们可以取对数,即求∑i=1klog⁡wi\sum\limits_{i=1}^{k}\log{w_i}i=1∑k​logwi​最小,这样就转换成了最小割。但是我们计算答案要寻找割掉的边然后将权值累乘。可以想到,最小割是指求出权值和最小的边集,使得源点和汇点S,TS,TS,T不连通。再考虑到,如果一条边它是割掉的边,那么它的流量一定为000(反之不成立)。那么_最小割集答案

消费向上商业向下,爱特茂商业奥莱MALL项目入驻山东,引领商业项目空前发展_潍坊新辰里购物中心-程序员宅基地

文章浏览阅读292次。  素称“齐鲁大地”,儒家文化发源地的山东省,是我国人口大省之一,常住人口10152.7万人。提起山东,人们最先想到的会是青岛、济南这些经济与旅游业都极为发达的城市,但山东最具有潜力的城市却不是这些,而是正在奋起直追的潍坊。  2016年潍坊便被认定为“中国最具投资潜力和发展活力的新兴经济强市”之一,2021年全市实现生产总值7010.6亿元,同比增长9.7%,全市社会消费品零售总额实现2781.5亿元,同比增长16.4%,按消费类型分,商品零售2589.1亿元,增长15.5%;餐饮收入192.4亿元,增_潍坊新辰里购物中心

理解SpringMVC核心原理和设计模式应用背景_springmvc 的这种 mvc 模式了解吗?他的工作原理是什么?用到了哪些设计模式?-程序员宅基地

文章浏览阅读511次。对Java程序员来讲,做web开发最熟悉的框架莫过于SpringMVC了。之所以它能一统江湖,不是自己太优秀,而是对手太坑了,不知道大家还记不记得2017年左右Struts2爆出了一个大漏洞,自此之后,Web开发领域的就是SpringMVC的天下了。但是鉴于这么优秀的框架,很多程序员还只是停留在会用的状态,对底层的原理却不甚了解,所以今天咱么就来聊聊SpringMVC的工作原理。三层架构在开始介绍SpringMVC之前,咱么要先来了解一下web开发的历史。我们的开发架构一般都是..._springmvc 的这种 mvc 模式了解吗?他的工作原理是什么?用到了哪些设计模式?

推荐文章

热门文章

相关标签