• 1

  • 24

条条大路通GitHub:入门Python,7个最佳存储库推荐

3星期前

条条大路通GitHub。

在本文中,我列举了GitHub上的一些Python免费学习资源,其中有包含教程式的Jupyter Notebook,还有一些专门为你解决编程问题。

如果你以前没有接触过Python,那么你可以从通过这些资源直接入门。如果你对Python已经很熟悉了,而你想复习某个特定的主题,比如说算法,那么还有专门为你准备的库!

资源一:学习Python3-从入门到中级(2.2k星)

GitHub:github.com/jerry-git/le

该存储库在入门部分就带我们浏览19个Jupyter Notebooks,涵盖了诸如字符串和条件之类的基础级别,然后通过讨论类(对面向对象编程的简单介绍),异常(什么是异常,如何处理异常)以及Python标准库(DeaTime,正则表达式等等)中包含的一些特性来进行深入讨论。

每个主题都有一个“Notebook”链接,可为我们介绍该主题和一些示例代码。完成此操作后,将有一个“练习”链接,可将我们带到笔记本电脑上,我们可以填写示例问题并进行测试。

然后,其中有一个的“惯用”部分。该节介绍了“Python功能”,这是Python中许多其他编程语言都没有的特性。如果你熟悉另一种语言,那么你可能需要查看该部分内容,了解专门使用Python的技巧和技巧。例如,有一节专门介绍了如何用Python不同于其他语言来处理循环。

该存储库还给出了“最佳实践”notebook链接,我们可以使用该notebook来了解创建Python项目时应做哪些实践。它涵盖了诸如使用 pipenv 设置虚拟环境以及使用 pytest 进行测试等等。

资源二:学习python-从入门到中级(4.9k星)

GitHub:github.com/trekhleb/lea

该存储库还可以作为Python的介绍,它可以让你从初学者过渡到中级(中级的意思是,使用除了简单的循环和算术之外的语言)。该存储库不是使用 notebooks,而是 Python 脚本的集合,每个脚本都是核心类别的子主题,如“操作符”、“数据类型”和“控制流”。

每个 Python 文件都演示了所讨论的子主题以及一个有用的链接,你可以访问该链接以获取更多信息。如果你不清楚代码的作用,并且需要快速回顾一些理论,这些链接会对你有所帮助。

使用 Python 文件时,存储库中包含的两个重要功能是测试和样式检查。你可以在“How to Use This Repository”下看到完整的详细信息,但是为了进行测试,作者在主函数的底部包含了带有 assert 的行,以查看函数是否正常运行。如果你想更改代码并查看它是否能正常工作,这些链接能起到很好的作用。此外,为了养成遵循 Python 的主要样式指南(pep8)的习惯,还有进一步的说明供您在代码上运行pylint,以查看Python文件是否符合样式指南。

当然,你也不需要完全遵循本课程的全部内容,因为作者指出,你可以将存储库用作备忘单,你可以简单地找到自己要查找的部分,查看文档,玩转代码,然后运行测试和 lint 代码,看看它是否可以正常工作和编写。

资源三:全速python-中级入门(2.8k星)

GitHub:github.com/joaoventura/

这个资料库的特色:它是一本书。该书快速讲解了字符串和列表的基础知识,然后迅速跳入了相对更高级的主题,例如“类”,“协程”和“异步编程”。 作者在编写本书时选择了实用的方法,并通过代码示例简要介绍了每个主题,然后直接跳到练习,读者可以自己尝试解决问题。

你可以从自述文件链接下载pdf / epub文件,也可以克隆存储库并自行构建。

作者在文中写道:“拥有软件工程学位的分布式计算专业的学生在两周内就熟悉了Python,并在第三周内可以使用套接字实现分布式客户端-服务器应用程序”。 如果你已经具有另一种语言的软件工程经验,或者Python不是你的第一门编程语言,那么使用本书可能会帮助你快速掌握Python。

资源四:python参考 —中级(2.4k星)

GitHub:github.com/rasbt/python

此存储库不是像以前的存储库那样包含多组概念的教程式资源。相反,这个存储库更多的是关于中级主题的不同 Notebooks 的集合,比如“ Python 中的 SQLite 数据库操作”和“通过多处理模块进行并行处理”。如果你已经有了坚实的 Python 基础,这个资源库可以帮助你真正利用语言的不同特性。与前面提到的存储库一样,这个存储库也包含了可以编辑和运行的代码的 Notebooks。

这本名为“不太明显的 Python 素材”的 Notebook 提供了各种 Python 和 Python 模块特性的简要介绍,这些特性可能是你在学习绝对基础知识时没有学到的。你永远不知道这些随机的提示什么时候就会为你的以后的工作提供帮助。如果你刚开始使用Python,那么建立理解的深度是非常好的,但是一旦你充分了解了基本知识,这个存储库可以帮助你完成一些无关的技巧的汇编,比如拓宽和填补你的知识空白。

此外,该库还提供了非常有用的非代码资源。例如,作者创建了一个名为“ Python 中的单元测试—为什么我们要让它成为一种习惯”。

作者还链接了许多其他对学习 Python 非常有用的外部资源,包括论坛、书籍和现有的 Python 项目。例如,Reddit上的r/Python是一个很好的地方,可以找到有用的Python技巧以及社区成员展示的个人项目。

资源五:Python编程练习-从入门到精通(11.2k星)

GitHub:github.com/zhiwehu/Pyth

这个存储库目前有 100 个 Python 编程练习,从入门到高级难度不等。这些问题和解决方案最初是用 Python2 编写的,但后来作者用 Python3 编写的解决方案更新了 100 个问题。

如果你对Python已经很熟悉,那么有些问题会很简单。

如果你陷入困境,那么可以根据“提示”内容,来解决问题。找出问题解决方案的过程有助于你真正记住解决方案。

由不同的作者针对相同的问题和替代解决方案,该存储库还有一个“扩展版本”。 在这个扩展的存储库中,作者试图展示解决问题的不同方法,这可能比原始解决方案更有效或“ Pythonic”。

资源六:编程问题—从中级到高级(2.6k星)

GitHub:github.com/MTrajK/codin

与前面的存储库一样,该库包含了一个可以解决的编程和算法练习的列表。然而,这个存储库并没有把所有的练习都放在 Notebook 上,而是为每个练习准备了一个 Python 文件,其中包含了问题的描述,以及解决问题的方法。

这些问题不是给一个完全0基础的初学者学习的,所以我建议你已经掌握了基本知识(使用函数、控制流等)之后再开始。

作者还写道“算法和结构,而不是特定语言”。正因为如此,他用Python编写了解决方案,因为Python语言的可读性,熟悉其他语言的人也可以用这个存储库来了解如何处理算法问题。

该存储库中的问题并不是作者最初编写的,因为他明确指出,这些问题来自LeetCode等网站。他的贡献是提供解决方案和解释,帮助人们学习如何解决这些类型的问题。

你会发现许多问题可以归为一个主题,所以解决这些问题的方法可能有些相似。当你在一个主题中不断练习相同类型的问题时,你会发现这些问题也不过如此。

除了包含算法问题和解决方案的Python文件外,还包括一个供我们使用的其他资源的综合列表。包括许多在线课程,推荐书籍,以及针对编程问题的热门网站的链接。

资源七:算法-从中级到高级(83.4k星)

GitHub:github.com/TheAlgorithm

该存储库提供了一组文件,这些文件可以展示如何在Python中实现不同的算法。这些算法分为从“算术分析”到“区块链”再到“数据结构”甚至更多的类别。但是,对于如何解决一个问题,并没有太多的解释,因为这个存储库可以作为实现不同算法的解决方案指南。

有些文件还会为我们提供了上下文信息(以及一个或两个链接方便我们入门),在尝试解决这些算法之前,自己必须要做一些研究。 如果你还是Python新手,我建议你还是先掌握基础知识,因为该存储库确实适合那些已经熟悉该语言并希望加深自身对算法知识理解的人。

作者还为其他几种主要语言(Java,C ++,C,Go,Javascript)创建了类似的“学习算法”存储库,你可以在配置文件的固定存储库中进行查看学习。

总结

GitHub存储库里包含了大量有价值的学习资源,但这并不是让你要学习掌握所有这些资源。建议首先从“初学者到中级”类型的存储库中选择一个,然后通读其中的所有学习材料。你应该选择最适合自己学习风格的存储库。例如,如果你想通过可编辑的Jupyter Notebook 学习从入门到中级,那么可以使用本文中介绍的第一个存储库。

另外,两个100+的 Python 问题非常适合作为解决编程问题的入门。你可以每天尝试解决一些问题或者等到你的 Python 有了更坚实的基础之后再开始。这些最后都会帮助你掌握基础知识、编程问题的类型,这些知识甚至可能会出现在你的技术工作面试中。

如果你还在花冤枉钱学习Python,那不妨多看看这些免费的学习资料,保证能够让你的Python水平从入门到精通!

--END--

免责声明:文章版权归原作者所有,其内容与观点不代表Unitimes立场,亦不构成任何投资意见或建议。

程序员

24

相关文章推荐

未登录头像

暂无评论