《自学是门手艺》:李笑来的免费开源自学指南,用Python教你学会学习
一句话简介:这是李笑来写的一本开源免费书籍,用 Jupyter Notebook 的形式,以 Python 编程为入口,教你如何掌握自学能力。GitHub 17.9k Star,全书完全开放,CC-BY-NC-ND 协议。
这是什么项目?
《自学是门手艺》是李笑来于 2019 年发布的一本开源书籍,副标题是"没有自学能力的人没有未来"。它不是一本普通的编程教材——作者先用整整一个部分说服你"为什么一定要自学",然后才开始教 Python。编程只是入口,真正的目标是把你变成一个能持续自学任何新东西的人。
全书以 Jupyter Notebook 格式编写,你可以在浏览器里边读边运行代码,也有 Markdown 纯文本版本。特别感谢霍炬(@virushuo)和洪强宁(@hongqn)两位在写作过程中提供的帮助。
# 自学的伪代码
def teach_yourself(anything):
while not create():
learn()
practice()
return teach_yourself(another)
teach_yourself(coding)
全书结构
全书分为三个大部分,从"为什么学"到"怎么学"再到"怎么学到位":
第一部分:为什么要自学 + Python 入门
- 为什么一定要掌握自学能力? —— 论证自学的必要性
- 为什么从编程开始? —— 编程是最好的自学训练场
- 只靠阅读习得新技能 —— 阅读是自学的核心手段
- Python 基础 —— 值与运算、流程控制、函数、字符串、数据容器、文件
- 如何应对"过早引用" —— 知识网络中前后依赖的处理方法
第二部分:刻意练习
- 笨拙与耐心 —— 接受初期的笨拙是必经之路
- 刻意练习 —— 不是重复,而是有目的的练习
- 函数深入 —— 参数、Lambda、递归、文档字符串、模块、TDD 测试驱动开发
- 刻意思考 —— 如何真正理解而不是死记硬背
第三部分:战胜难点
- 战胜难点 —— 拆解难题的方法论
- 面向对象编程 —— 类、装饰器、迭代器、生成器
- 正则表达式 —— 文本处理的利器
- 拆解与刚需幻觉 —— 如何判断什么是真正重要的
- 避免注意力漂移 —— 自学者最大的敌人是分心
适合谁读?
- 想自学编程但不知道从何开始的人
- 觉得自己"学不进去""坚持不下来"的人
- 想提升学习能力、建立长期学习习惯的人
- 对李笑来的方法论感兴趣的读者
它不教你变成资深程序员,而是教你怎么把自己变成一个能持续学新东西的人。编程只是载体,自学能力才是真正的课程。
项目地址
🔗 GitHub 官方仓库:
https://github.com/selfteaching/the-craft-of-selfteaching
🌐 Gitee 镜像(国内访问快):
https://gitee.com/coco9527/the-craft-of-selfteaching
📖 在线阅读(Markdown 版):
https://github.com/selfteaching/the-craft-of-selfteaching/tree/master/markdown
项目协议:CC-BY-NC-ND(署名-非商业性使用-禁止演绎) · Stars: 17.9k · Forks: 17.8k