我应该开始阅读哪些 Al Sweigart Python 书籍?

自 2009 年以来,我一直在为初学者编写编程书籍。所有这些书籍都可以在 InventWithPython.com 上免费在线阅读。许多人给我发电子邮件询问他们应该阅读我的哪本书,所以我写了这篇指南来帮助初学者开始免费阅读学习资料。

    “我对编码很感兴趣,我只想开始学习编码。” “我喜欢玩或想制作电子游戏。” “我对黑客攻击和网络安全很感兴趣。” “我是一个初学者,但不是一个完全的初学者,我厌倦了做同样的“你好,世界”教程。” “我喜欢 Minecraft 并想开始编码。” “我想让我的孩子开始编程。” “我非常想学习编码,我想读你所有的书!我应该按什么顺序阅读它们?” “你有哪些适合初学者的书?”

在我深入细节之前,关于学习编程的另一个常见问题是“我应该学习什么编程语言?” 答案是几乎所有案例都是 Python。 Python 的学习曲线平缓,语法可读,但也是专业人士使用的严肃语言。 许多人说,从哪种语言开始并不重要,他们说得对。 选择另一种语言作为你的第一门编程语言来学习并不是一个“错误”的选择,但 Python 是如此的多才多艺并且没有其他语言中常见的减速带,我强烈推荐它。

“我对编码很感兴趣,我只想开始学习编码。”

使用 Python 自动化无聊的东西,第 2 版(在线免费阅读,购买印刷书籍)是我最受欢迎的编程书籍。 上半部分涵盖编程基础知识和 Python 语言,而下半部分则介绍可帮助您完成实际任务的软件模块,例如更新 Excel 电子表格、发送文本和电子邮件通知、从 PDF 中提取文本、从网站抓取数据、和许多其他任务。 本书跳过了计算机科学和算法的技术细节,着重于让您编写实用的程序来自动执行计算机上的枯燥任务。

对于初学者来说,这也是一本很好的通用编程指南。

使用 Python 自动化无聊的东西可以在我的网站 AutomateTheBoringStuff.com 上免费阅读。 本书适用于:

    想要学习编码的成人和青少年。 在工作中使用计算机的业余爱好者、办公室工作人员、学术研究人员和管理人员。 发现自己在工作中埋头于电子表格和 PDF 的人。 有兴趣转行到软件工程的成年人,但希望从小尝试着手。

我还创建了一个包含 50 个视频的 Udemy 课程,该课程遵循本书的大部分内容。 前 15 个视频可在 YouTube 上免费观看。

完成 Automate 后,我建议继续阅读 Beyond the Basic Stuff with Python 或阅读 Eric Matthes 的 Python 速成课程。

“我喜欢玩或想制作电子游戏。”

Invent Your Own Computer Games with Python(在线免费阅读,购买印刷书籍)适用于初学者,通过制作简单的基于文本的游戏(以及最后使用 Pygame 软件库制作图形游戏)来教授编程。 使用 Python 和 Pygame 制作游戏(在线免费阅读,购买印刷书籍)跟进了几个图形游戏的源代码,例如俄罗斯方块和贪吃蛇以及四人连线。 The Big Book of Small Python Projects(在线免费阅读,购买印刷书籍)跟进了 81 个基于文本的游戏、模拟和动画项目。

这些书中的游戏项目不像具有 3D 图形的现代视频游戏,但在您学习编程基础知识时,简化的视频游戏是有趣的项目。

这些书非常适合:

    想要学习使用有趣的视频游戏项目进行编程的完全初学者。 寻找小型编程项目创意的人。 想学习 Pygame 2D 图形游戏库的人。

“我对黑客攻击和网络安全很感兴趣。”

使用 Python 破解代码(在线免费阅读,购买印刷书籍)涵盖了经典密码以及如何破解它们的密码分析技术。 您将学习编写实现各种密码(凯撒密码、换位密码、Vigenere 密码、RSA 算法等)的 Python 程序,并编写可以破解这些密码的程序。

本书适用于:

    刚接触黑客和网络安全的人。 希望在其技术职业生涯中提高数学和编程水平的人。 初学者密码学家。 不想从事网络安全职业,但想学习 Python 并对密码感兴趣的人。

“我是一个初学者,但不是一个完全的初学者,我厌倦了做同样的“你好,世界”教程。”

有人说,要提高你的编码技能,你应该阅读开源项目的源代码。 我不同意这个建议:开源代码可能没有很好的文档记录,可以使用先进的技术,并且通常是一种“从消防水龙带喝水”的方式来了解更多关于编码的信息。 我写了 The Big Book of Small Python Projects(在线免费阅读,购买纸质书)以包含简短项目的源代码,但仍然提供了如何将编程概念应用于实际程序的示例。

Beyond the Basic Stuff with Python(在线免费阅读,购买印刷书籍)涵盖了一些中级和高级 Python 技术,以及软件开发方面的一般最佳实践,例如如何编写函数、如何命名变量、编程术语和使用 Git 和 GitHub 进行源代码控制。

这些书非常适合:

    感觉“卡住了”的人在做他们已经了解的初学者教程,但发现高级教程太难了。 想要为小型编程项目提供创意的人。 人们正在寻找学习使用 Python 编码的下一步。

“我喜欢 Minecraft 并想开始编码。”

Coding with Minecraft(在线免费阅读,购买印刷书籍)教您如何使用适用于 Minecraft 的 ComputerCraft 模组进行编程。 ComputerCraft 将可编程机器人添加到您的 Minecraft 世界,您可以通过编程来进行采矿、建造、耕种、工艺、解决迷宫等。 ComputerCraft 使用 Lua 脚本语言而不是 Python。

本书适用于:

    喜欢 Minecraft 并希望开始编程的孩子(和父母)。 在学校编码俱乐部后运行的教师或讲师。

另请查看 Programming with Minecraft。

“我想让我的孩子开始编程。”

Scratch 3 Programming Playground(在线免费阅读,购买打印副本)涵盖了 Scratch 编程环境工具。 Scratch 是麻省理工学院的免费图形化编程环境。 它通过将代码块组合在一起形成完整的程序来教授 8 至 16 岁的儿童编程。 您可以了解更多有关 Scratch 是什么的信息,并阅读给家长的信息。

另请查看 Coding with Minecraft(在线免费阅读,购买印刷书籍)。

我还有一个涵盖 Scratch 的免费 Udemy 课程,尽管截至 2022 年它仍然涵盖 Scratch 编辑器的第 2 版,而不是当前的第 3 版。

“我非常想学习编码,我想读你所有的书!我应该按什么顺序阅读它们?”

如果您想阅读所有这些书籍,请按以下顺序阅读:

    使用 Python 自动化无聊的东西以获得基本的编程概念。 Invent Your Own Computer Games with Python 获取制作游戏项目的详细教程。 The Big Book of Small Python Projects 用于创建各种编程项目的经验。 (可选)如果您想继续制作游戏,请使用 Python 和 Pygame 制作游戏。 (可选)如果您想学习用于密码项目的 Python,请使用 Python 破解代码。 超越 Python 的基本知识,学习中级和高级软件开发技能。 Recursive Book of Recursion 通过探索递归编程技术来学习计算机科学。

“你有哪些适合初学者的书?”

回顾一下,这是我为没有编程经验的人准备的书:

    用 Python 自动化无聊的东西用 Python 破解代码用 Python 发明你自己的电脑游戏用 Minecraft Scratch 3 编程游乐场

学习编码的免费资源比以往任何时候都多。 祝你的编程之旅好运!

阅读更多

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注