Python 学习资源#
Python 从入门到进阶的学习资源。
备注
这些资源依照你的喜好选择学习即可。
初学者#
- Python 教程
Python 官方教程。它涵盖了所有的基础,并提供了 Python 语言和标准库的浏览。推荐给需要快速开始的人。
- Real Python
由各种专业的 Python 开发团队创建的免费且深入的 Python 教程库。包括从头开始学习 Python 的所有内容,从 Python 最基础的知识,到 Web 开发和 Web 爬取,再到数据可视化等等。
- Online Python Tutor
在视觉上向您一步步展示程序是如何运行的。Python Tutor 帮助人们克服 学习编程的基本障碍,让您明白程序源码中的每一行的执行会有怎样的结果。
- Invent Your Own Computer Games with Python
面向没有任何编程经验的新手书籍。每个章节都有一个小游戏的源码,这些程序例子说明了 编程概念,让读者了解到程序是什么样的。
- Hacking Secret Ciphers with Python
此书向完全的新手讲解了 Python 编程和基本的密码学知识。所有章节提供了多种加密源码,也提供了破解程序。
- Crash into Python
这个指南也叫 Python for Programmers with 3 Hours ,它给有其他语言开发经验的开发人员提供一个关于 Python 的快速教程。
- Think Python: How to Think Like a Computer Scientist
通过使用 Python 语言来介绍计算机科学中的基本概念。重点是创建一本有大量练习的书,尽量减少专业术语,并在每一章中都有一节专门讨论调试的主题”。
在探索 Python 语言的各种功能时,作者将各种设计模式和最佳实践编织在一起。
此书中还包括一些案例研究,将书中的主题应用到实际例子中,供读者对主题进行更深入的讨论。案例研究包括 GUI 和 Markov 分析的任务。
- Code the blocks
为初学者提供免费的交互式 Python 教程。它将 Python 编程与 3D 环境相结合,您可以在其中 “放置方块” 并构建结构。本教程将教您如何使用 Python 创建逐渐精细的 3D 结构,从而使得学习 Python 的过程变得有趣和吸引人。
中级#
- Python Tricks: The Book
通过简单的示例发现 Python 的最佳实践,并开始编写更美观的且 Pythonic 的代码。
您将通过实际示例和清晰的叙述掌握 Python 的中级和高级功能。
- Effective Python
此书包含 59 种具体方法来改进编写 Pythonic 代码。在这 227 页中,这是一个关于程序员需要做的一些最常见的程序以成为高效的中级 Python 程序员的非常简要的概述。
高级#
- Pro Python
面向从中级到高级,想明白 Python 是如何以及为何这样工作,如何将代码水平提高一级的 Python 程序员。
- Expert Python Programming
讲解编写 Python 的最佳实践,并专注更高级的人员。
它以诸如装饰器(伴随缓存、代理、上下文管理器、案例研究)、方法解析顺序、使用 super()、元编程和一般 PEP 8 上的最好实践开始。
它有一个详细的、多章的关于编写的案例研究,发行了一个包并最终成为一个应用,包含使用 zc.buildout 的一个章节。后面的章节详细讲述了最佳实践,比如编写文档、测试驱动开发、版本控制、优化和分析。
工程师和科学家#
- A Primer on Scientific Programming with Python
由 Hans Petter Langtangen 编写,主要涵盖了 Python 在科学领域的使用。在这本书中,例子是从数学和自然科学中选出的。
- Numerical Methods in Engineering with Python
由 Jaan Kiusalaas 编写,其重点是数值方法以及如何用 Python 来实现。
各种各样的话题#
- Problem Solving with Algorithms and Data Structures
涵盖了一系列数据结构和算法。所有概念都用 Python 代码说明,提供了可在浏览器中直接运行的交互式样例。
- Programming Collective Intelligence
介绍了大量基础的机器学习和数据挖掘方法。其展示在数学上并不是很正式,而是更侧重于解释潜在的直觉,以及展示如何使用 Python 来实现算法。
- Transforming Code into Beautiful, Idiomatic Python
由 Raymond Hettinger 制作的视频。通过它可以学习到更好地使用 Python 的最佳特性,通过一系列的代码转换来改进现有代码:”当您看见这个,就那样去做”。
- Fullstack Python
为使用 Python 进行 Web 开发提供了完整的自顶向下的资源。
范围涵盖从设置 Web 服务器到设计前端、选择数据库、优化/缩放等。
顾名思义,它涵盖了从头开始构建和运行完整的 Web 应用程序所需的所有内容。
- PythonistaCafe
一个邀请式的在线社区,里面的 Python 和软件开发爱好者互帮互助、彼此成长。可以把它看做是 Pythonista 共同进行改进的俱乐部。在这里,每天都会讨论广泛的编程问题、职业建议,同时也会涉及其他主题。
参考#
- Python in a Nutshell
由 Alex Martelli 编写,涵盖了 Python 跨平台的多数用法,从它的语法到内建库,再到比如说编写 C 扩展的高级主题。
- The Python Language Reference
Python 的参考手册,它涵盖了这门语言的语法和核心语义。
- Python Essential Reference
由 David Beazley 撰写,是 Python 的最终参考指南。它简明扼要地解释了标准库的核心语言和最重要的部分。 它涵盖了 Python 3 和 2.6 版本。
- Python Pocket Reference
由 Mark Lutz 编写,是一个了解核心语言的易于使用的参考,介绍了常用的模块和工具集。它涵盖了 Python 3 和 Python 2。
- Python Cookbook
由 David Beazley 和 Brian K. Jones 编写,打包了许多具有实践意义的“食谱”。这本书涵盖了核心 Python 语言,也涵盖了诸多不同应用的常见任务。
- Writing Idiomatic Python
由 Jeff Knupp 编写,包含了最常见和最重要的 Python 习语,其形式尽可能地有辨识度和易于理解。每个习语都是编写一些常用代码片段的推荐方式,其后会解释为什么这个习语是重要的。每个习语均有两个代码样例:”有害的” 方式和 “理想的” 方式。