前言·你一定得读!
本书以引导式教学为核心思想,对于刚刚入门学习编程的读者,提供更加丝滑的入门阅读学习。
本书主要有两部分组成:思维、代码。对于第一部分思维:是为了让没学过编程的读者,能够了解编程究竟在干什么,掌握认识和解决问题的思维方式。对于有学过编程的读者,可以更深刻的理解编程背后的思维方式,达到举一反三的学习;第二部分编程:是对 Python 代码的系统入门教学,不仅仅可以强化第一部分的编程思维,更是训练、培养出属于自己的编程思维、逻辑思维。从变量、初步初识类型……函数,每一篇都严丝合缝的设计,结合引导式教学,逐步推进。
例如:初步初识类型章节,先大致统一了解 Python 每种数据类型,是指拥有上帝视角。因为我们学习任何新知识,都无法完完全全独立单一的新知识来学习,有了这篇,后续学习就会容易很多。
本书适合所有想要学习、了解编程的读者,并且严谨的逻辑设计还适合专业的计算机辅导机构、在校师生等。本书书写、设计的初衷就是为了:不对编程设槛,丝滑解决各类想要学习编程的读者。——浅者觉得其浅,深者觉得其深。
你好,我是悦创。
这个开头,我用了 8 年。在各个平台的文章和自己的博客,都用这个笔名,现在我也在这本书中沿用。
前言是你可以不看,但是我必须要写。不过我想在此告诉你,我的前言你还真的就必须看——对你有益!
在写这个书稿的时候,我一度陷入恐慌,害怕写了这么久的书稿,无法正常出版,有几个原因:
- 一直在反复的打磨,希望有更好的表达,让小白和不同语文理解能力的人都能读懂;
- 平时做的是海内外学员的私教,所以书稿的编写时间留的较少;
- 在 2022 年 4 月 28 日签约出版合同,距今(2025 年 4 月 26 日)一共过去了 1094 天。也就是 2 年 11 个月 29 天,再过一天就整整 3 年了,这拖稿有点“过分”。
- 而且在写这本书时,我经历了:大模型的异军突起和迅猛发展,一度陷入沉思本书还有存在的意义吗?
- ……
基于上面的各种原因,我一度害怕无法出版……
不过,我还是很感谢跟我对接的杨编辑,耐心等待且不催我,给了我足够的时间书写此书。正是有他的耐心,才让你有接触优质的本书机会!
1. 本书的缘起与内核
1.1 缘起·时代所需
我喜欢文学,没想到长达以后,率先使我圆梦的是:编程。
我从某易离职之后,一直在做编程私教。我带过太多学生,学生分布各行各业、各个专业。其中也不乏名校学生,下面是我带过的部分学校学生名单:

所以在你购买本书时,我不得不告诉你个好消息:你有幸成为名校学生的同学,因为你如同他(她)们一样拥有同一位老师——我。
那他们都是哪些专业或行业呢?
物理、化学、生信、英语、工程、计算机、数学、金融、会计、新媒体、证券等,都是我带过的学员。从带的学员专业中我深刻意识到:Python 编程在逐步变成一项通用技能,是人人必备的一项技术,不再是特定职业人群学习的专业。
其次,在国外基本上从初高中、预科、本科、研究生都开始选修、必修学习编程。在国内只有少部分有先见之明的学校、好学校会安排学生学习 Python,否则只有那些考上研究生的人,学校才会要求学习编程。
当然,不论是是国内还是国外,这一切的主导者都是学生自己的内心想法。或者更准确的说是思维是否觉醒,看见编程在这个时代所具有的重要性。否则,都还是停留在“混”过这科的想法。只不过国外的学员因为环境影响,会有更多人“启智”。
导致很多人学习编程时,如“牛马饮水,不知所以”。知道了语法,但没有拥有完整的编程逻辑,这个编程逻辑不要以为只是特指编程这个领域的逻辑,希望你阅读本书的“编程思维”部分后发现,这是你在所有领域、生活都应该具备的思维。
举个例子:你阅读下面的代码,看看能否看懂大概意思。不需要完全理解和实现,这些不重要:
x = 7
y = 3
z = x * y + 2
print(z)
零基础没有任何编程经验的你,是不是可以很轻易的看懂上面的代码。就算再复杂一些的代码,你也是可以的:
def add_up_to(n):
total = 0
for i in range(1, n + 1):
total += i
return total
result = add_up_to(5)
print(result)
就算一点编程不懂的你,依然可以大概看懂!这是为什么呢?因为 Python 很接近自然语言,所以你只要稍微懂点英语,Python 代码就看懂一些。
所以很多人被学校、机构等被忽悠,一味的只是讲语法。教学老师也不知道编程的核心是要学习编程思维和建立完整的逻辑,以至于很多最后投入大把时间但是无法学会独立编程。很多学生找到我的时候,都会说一句:老师我懂 Python 语法,可就是写不出来代码。不然就类似:平时老师讲课,感觉也听懂了,作业有时候写不出来。
(所有聊天记录不涉及隐私,且当事人悉知!)


这种情况,除非学生自己只想过考试。不然但凡是想真正掌握 Python 这个技术的,只能跟着我系统学一下。
此时,他们就会陷入沉没成本的困境:
- 从头学又得付出时间和金钱,之前的投入基本上就白费了;
- 从头学,就担心跟不上学校或工作中的进度;
用对方法,根治问题,这样才能真正的节省时间。看似从新投入,实则是自我的救赎。
而根本性的解决方案则是:需要从头学习,并且在学习的过程中需要自己研究、学习能力或者有老师一步步引导着学习(引导式教学)。但是现实生活中要是能有满足其一的,也不会让自己陷入当下的困境。
而跟随我的学习呢,需要付出一定的金钱。金钱还不是主要,只要你有觉醒的思维,这一切都好解决。主要是我每个月招收的私教学员都是按实际精力,在确定质量的情况下招收的。
这也是本书书写的真实意图之一,让你拥有那些精英人群“同等”的学习资源,以书籍的形式给你展现。或许要是书稿签合同那时,把本书出版就不会有这么清晰的意图,还是需要靠一定的时间积累、沉淀才能书写。
另外,要额外说的一点是:不仅仅是学生,已经工作的人找到我学习编程。难道是为了转业吗?——不是的,不是工作要求,那就是编程可以极大的辅助工作效率(办公自动化、数据分析、AI 等)。

还有些学生是早期没学过,等到需要的时候学校不会按你是零基础一点点的去教、工作也不会等你学会,而是会直接招收已经会的学生。

上面聊天记录的截图也是案例之一,因为国内高中没学习过,所以无法及时的跟上学校的课程。
上面的表达我希望你可以 Get 到如下 Point:
- 要点一:你有幸成为名校学生、各职业领域的同学,因为你如同他(她)们一样拥有同一位老师;
- 要点二:认识到学习编程的必要性,不是可选项;
- 要点三:学习编程的本质,是需要有意识的建立起编程逻辑;
- 要点三:不要等到需要的时候,才想起要学。有些知识只有你提前学了,才会在需要的时候派上用场。
- 要点四:学习的核心之一是:不是工作、学习中用不到,而是当你不熟悉一个技能的时候,遇到问题时根本不会考虑它。比如:不会用 Excel 的人只能手动算表格,学了之后才知道一公式就能算千行数据;
- 要点五:本书会贴切真实的入门 Python 的困难点,使用引导式教学的方式进行书写表达;
- 要点六:人工智能的正式爆发,想要更好的使用人工智能、AI 工具就必须学会 Python,做大模型的主人,融入到这一场科技跃迁的进程中,不要只是做一个“历史的旁观着”。
- 补充:重学不是单纯的重学,主要的优先级是:思维逻辑 > 笔记 > 语法。对于需要考试的来说,语法需要记忆。对于不需要考试的人来说,语法记不太住也没事,要学会查找自己的笔记,毕竟实际应用并不是“闭卷”。不论是哪类人群,都是按照前面说的优先级来。并且熟能生巧,就算记不住,用多了自然也就记住了。用的不多,还有笔记把持。
- 注意:还是要学会记笔记,不论是线上私教学员,还是阅读本书的读者,你们都要学会做笔记。只有自己做的笔记才能熟练使用,并且笔记要用云端的电子版来做,方便随时随地查阅。学习编程和以往其它学科手写笔记不同,编程类的要考虑查找速度、便捷性,不要选择手写笔记!
我说这些不是为了证明什么,而是让你知道我足够优秀且足够教你。
对于上面的要点四我要做一些补充:
在学习一项新技能时,最重要的收获往往不是马上能用在工作或学习上。真正的变化是,当你掌握了这项技能之后,你在遇到问题时,脑海里多了一个“可以解决它”的选项。
在没学过 Python 之前,如果遇到一堆数据需要处理,比如删掉文本中的所有数字,你可能只会一味地手动操作:一个个选中、一个个删除,甚至心里想着:“没有办法,只能慢慢来吧。”
但当你学了 Python,甚至稍微了解了正则表达式,你会突然意识到:原来只要一行代码,就可以自动把所有数字统统清理干净。
这不是简单的“学了之后多快”,而是学了之后你开始能想到另一条路。
而没学的人,连这条路本身都不会意识到存在。
所以,学习的本质是:帮你在未来遇到问题时,有更多的“想到”的可能。——这才是掌握技能带来的真正自由!
本书要带你学的是不仅仅是表面:编程思维、Python 入门等,更重要的是一种思维!别想着靠短视频实现圈层跃迁,这样你只能被坑、割韭菜。——阅读才是正确的方法!
最后再补一句:教育部发布,各大高校新增 29 个专业。一图胜千言,看下图:

你可以看看虽然类别不同,但是有多少是和技术有关呢?都是哪些大学呢?肯定是好大学优先试点,“新课程也只有好大学才有可能制作教材等学习资料”,你细品,你细细品!觉悟吧~
别想着被别人拯救,真正可以拯救的自己的只有自己。拿起本书学起来吧,蜕变由此开始。
1.2 内核·为什么本书值得学习?
最主要的内核是:编程这个学科交叉线极强,不像传统的数学那般:学习加减乘除然后反复练习加减乘除。换句话说:先学知识,再题海。本书不提倡,也不建议!为什么呢?假如:编程目前就给你讲了变量、数字型(包含运算符),那你说要给你留什么作业?留简单的创建变量和加减乘除的操作?这些很简单且无需反复练习,甚至可以说是无效练习。
很多学生在跟学的时候,每个部分时不时要问我:老师,有没有作业留一下?
因为我在写本书时,有以下几个核心点:
核心一:总耗时 3 年至余,不停的打磨
这本书从起初动笔,到最终定稿,经历了三年的时间。这三年里,我不断地推敲和完善内容,力求让每一个知识点都表达得更加清晰,讲解得更加自然。不急于求成,只希望通过长期的打磨,让读者在阅读时能感受到思路的流畅和内容的扎实。
核心二:教学实践中不断修正
在这三年期间,我在写本书时也在不停的使用本书去授课,一但发现其中的问题,我就去马上解决!所以,本书在你阅读时,已经被我实践过了! (省字版:各个行业,各个专业学生都学习过,经过验证的;)
因此,读者在学习过程中遇到的问题,很多都已经在实际课堂上提前被发现并解决了。(如果没有,请随时跟我反馈提问)
核心三:引导式教学,真正为新手考虑
本书采用引导式教学的方式编写,尤其在编程语法部分,不急于追求篇幅上的简短,而是注重过程的引导与细节的讲解。考虑到初学者在起步阶段容易遇到的各种障碍,我选择用更平实、耐心的表达,帮助读者循序渐进地掌握每一个关键知识点。
注意:采用引导式教学,一般书籍作者不会考虑这些。
核心四:体系化,结构化,清晰易学
全书从内容安排到学习节奏,都严格遵循体系化、结构化的原则。每一章,每一个知识点,都是精心编排,循序渐进,层层递进。学习过程中不会跳跃,也不会杂乱无章,而是像搭建积木一样,一步步夯实基础,帮助你稳稳走上编程之路。
核心五:最新前沿,教授「原则」
很多东西很容易过时,比如“经验是会随着时间过时,很多书籍的教授的是经验不是原则。”这么说有些抽象,换句话说:很多教学类书籍只是单纯的教授知识,不教授如何获取知识,如何思考,如何从零一步步推导,这些都被大部分书籍作者省略。为什么呢?无非两个原因:
原因一:自身还未完全理解就开始书写书籍,导致只能表达已有的知识,但不能带读者透其本质去教授。面对读者的提问,也略显生疏。
原因二:原则性的教学,需要耗费书写者的大量心血。很多写书的(教学类),不是为了名气、为了割韭菜、学术要求,而去写书。并不是自身达到某种水平后,内在自驱想要去分享写作出版。这类人往往不会细致的去写,和考究书籍逻辑和科学化。
对于原因二当下有太多例子,我就举几个例子:DeepSeek 刚刚现世和火起来,你书就出版了?某些出版社、短视频博主就可以卖 DeepSeek 书籍或手册了?拉屎都得酝酿一下吧,还是你提前预料 DeepSeek 会火,所以提前写,提前发?真不知道出版社是怎么通过审核的,还是沆瀣一气。卖的对象是谁?被贩卖焦虑、想要赚认知之外的钱……粉丝、网友。
你是和短视频博主一家人吗?画个多少钱,教你用 AI 赚钱?他们怎么不教自己的家人,很熟吗?偶,不对,人家有可能直接 AI 编写出版,是我欠考虑了。
注意:上面这一小部分,不要对号入座。我只想希望有买我这么“拙作”的读者,“骂醒”。如果恰好是上面说的那类人,那就更好了。我希望你不要再被人当成韭菜提款,如同我前面所说:别想着被别人拯救,真正可以拯救的自己的只有自己,自己脚踏实地的去学才是王道。
在我看到《DeepSeek xxx 指南》或者其它书籍问世的时候,更加让我意识到,中国需要我这类书,或许我不是最好的,但是我是先驱者。
对于原则的理解,我觉得没有什么比《羊皮卷》书中说讲的那么到位了,羊皮卷部分原文引用:「我不会让所谓的知识或者经验妨碍我的行程。造物生已经赐予我足够的知识和本能,这份天赋是其它生物望尘莫及的。经验的价值往往被高估了,人老的时候开口讲的多是糊涂话。说实在的,经验确实能教给我们很多东西,只是这需要花费太长的时间。等到人们获得智慧的时候,其价值已随着时间的消逝而减少了。结果往往是这样,经验丰富了,人也余生无多。经验和时尚有关,适合某一时代的行为,并不寻味着在今天仍然行得通。
只有原则是持久的,而我现在正拥有了这些原则。这些可以指引我走向成功的原则全写在这几张羊皮卷里。它教我如何避免失败,而不只是获得成功,因为成功更是一种精神状态。人们对于成功的定义,见仁见智,而失败却往往只有一种解释:失败就是一个人没能达到他的人生目标,不论这些目标是什么。」
核心六:书籍出版,即“过时”
很多书技术类的书,出版后就“过时了”,但是此书不会,有两个原因:本书教授的大部分是思维、原则,掌握这些原则、思维是亘古不变的;其次,我会留下我网站对应的书籍链接,方便实时维护和补充。
这个和文学创作和其它科普、教学书籍不一样,要想出一本好书极其耗费时间。这本书或许不是最好的,但肯定是“开山立派”之作。
1.3 浅谈「有效信息」
你学习到手的有效信息有多少?
换句话说:你在跟一个人上课或演讲,时时接收到多少?
感觉表达不太到位,应该这么说:就是老师上课时给你传达的知识,到你那里还剩多少?
举个例子:我给一个已经从伦敦政经毕业的吴同学上课,我跟她说了一系列的 Markdown 操作且语速适中没有过快。以及,一步步带着表达讲解。到吴同学自己操作时总能少掉那么一两步。就是我讲了 1、2、3步,吴同学会操作 1、3 步或者 1、2 步,总之就是不能准确复现。
这其中想要高效得到完整的有效信息有三个要素:
- 要素一:老师要表达清晰,语速不能过快,结合学生情况来;
- 要素二:学生自身的独立思考、理解能力需要强,否则前面说后面就忘了;
那吴同学是卡在哪里了?——要素二。
没有很好的实时理解能力,也就是对新信息的实时处理能力较弱,因为是一对一教学,所以最后成功掌握。
我想要表达的很简单:对于私教课的学生来说,不论理解能力如何都可以上课视频的形式学会。而书籍就能很好的解决这种线性流传递知识所存在的问题,文字一直都在不会消失,可以反复的阅读学习。所以你通过本书学习的学生,并不会比实时上课的学生差太多。因为本书书写的设计时,就考虑到了。(省字版:书籍则不会出现此问题!)
1.4 江湖地位
很多人写书是为了名气,学术要求或者是那种为了割韭菜(短视频博主)、蹭大模型热度而快速出书的人。但是我想要的或多或少会有一些想要名气吧,但更想要的是“江湖地位”。当人们想要学习编程时,可以想起我这本书,那就足已。
很多人写书,是为了追求名气、满足学术要求,或者像一些短视频博主那样,趁着大模型热度割一波韭菜,匆匆出书。说实话,我也不能完全免俗,多少也希望能有点名气。但比起这些,我更在意的是一种“江湖地位”。如果有一天,当人们想要学习编程时,会自然地想起我写的这本书——那就足够了。
2. 教育理念
2.1 怎么才能教的好?
做私教的 8 年来,很多人时不时都会来问我:你怎么教的那么好?
我说:不是我教得好,而是我学得好。
只有学的好,对自己所属的领域有一定的研究,得出自己的感受,这样才能给学生表达清楚。
在不停授课的同时,也是不断的收获学习的过程——教学应该也是一个持续学习的过程。
此时,写书只是梳理逻辑,并且把过往的生活重新“活一遍”。
2.2 感悟:书籍的作用是什么?
很多人误以为,书籍不过是信息的一种载体,是知识的一种集合。但我渐渐明白,书籍真正的作用,远远不止如此。
我的感悟是:书籍并不是将那些免费的知识,终于可以出版书籍收费了。书籍其实是将原来很贵很贵的知识,可以借助书籍这个载体传递变得便宜了。
知识是长在书籍土壤上的,开出了花,结出了果,书籍可以帮助我们做什么?
书籍也没办法帮助把那些原来没有价值的知识变得更有价值,书籍可以做的事情是:把一些原来很有价值,但没办法接触到那么多人的知识,因为书籍带来的连接,因为书籍如同互联网带来的规模效应,从而降低它的规模带来的边际成本。这是一个经济学的概念。
举一个例子:我在是做线上编程一对一教学,帮助过很多的学生、职场人士。每天要接触大量各类的学生,也有很多创业者来找我,我很愿意帮助大家。可是 1~30 个人来找我没有问题,40 个人来找我就有挑战了,100 个人、1000 人……我没办法服务这么多人,我工作中很重要的一部分工作,其实是不断地跟大家说“对不起,对不起,我没有时间。”
为什么呢?因为时间是我交付知识的一个载体,但同时也是我的一个上限,导致我们没办法在“单位时间”内接触那么多真正需要帮助的学员,那些打算用技术辅助工作、学业的人。
并且,要跟着我上课,需要准备适当的资金,所以很多普通家庭或者不重视编程的家庭,也不会投入太多,虽然编程很重要。而通过书籍,只需要付一本书籍的费用即可。
比如你要听罗翔的法学课,也得考的 600多分,并且得进中国政法大学把。“不考 600 分也可以,你得交个 60 多万吧”……
所以,那些优秀的老师,他一辈子服务的老师可能不超过几千人,那么优秀的东西只是服务于少数人,书籍帮助我们把这些“最优秀”,“最贵”的知识,让所有人都“平等”有机会的学习。所以,优质的作家们正在做一件非常非常了不起的事情。通过书籍的印刷出版,使最优秀的资源得到到最广泛的传播。
说了这么多,总结理解起来总归是有点费力的,我还是得换句话来说:
「书籍并不是简单地把信息从作者传递到读者,它的意义在于:把原本分散、昂贵、甚至难以直接接触到的智慧,经过整理、提炼和沉淀之后,用一种可复制、可流通、可负担的方式,传递给更广阔的人群。
书籍的出现,本质上降低了知识传播的边际成本。原本只有少数人才能接触到的经验、思想和发现,通过印刷术、通过出版流通,被放大到成千上万倍的规模,让更多人可以低成本地获取高价值的内容。这是一种规模效应的体现,一种典型的社会进步。
换句话说,书籍并不会凭空创造价值,但它极大地放大了原本就存在的智慧,让每一个渴望成长的人,都能以极低的门槛,触摸到人类最璀璨的思考成果。——这,就是书籍真正的意义。」
2.3 浅者觉得其浅,深者觉得其深
什么是最优秀的资源?书籍传播的同时也给我带来了一个挑战,当我出版的书籍接触 10 多万人的时候,这 10 多万人就特别广泛。(10 万是我对书的缥缈期待,有机会的吧?哈哈哈哈~)
以我自身的私教课程为例,学员遍布全球,有些是我的同行,是计算机的程序员,有的是学生(各种专业)、上班族,还有一些人 80 多岁的老人(退休教师),我还有一些四、五岁的学生。
要面对这么多差异性非常明显的学员时,我应该怎么讲这个课?应该讲的更深吗?很多人没办法理解,应该讲的更浅吗?那些已经有很多工作经验的人或已经“学过”一遍的,觉得它没有价值。
这个问题对于私教很好解决,我结合学员的情况进行授课,就可以解决。
那现在这个问题在书籍中出现,我如何才能面对 10 多万人把编程讲得好,这对我来说是非常非常重大的挑战。
到底怎么讲好?我做私教这 8年学到了一件非常重要的事,就是一个真正好的老师,不应该让浅者觉得其深,也不应该让深者觉得其浅,好的老师应该是让浅者觉得其浅,深着者觉得其深。
什么意思?就是要透,最终要达到的效果是:
- 那些没有接触过编程的人阅读完之后觉得挺简单的,编程原来可以这么好玩,挺有趣的,没那么复杂;
- 让那些自己觉得会编程的人阅读完之后一身冷汗,原来这才是真正的编程;
- 换句话说:初学者学会了我所讲的东西,就会感觉原来这些知识挺简单的,并不是原来想象中那么难。而对于一些这些方面的深入学习者来说,他们在学习我所写的书时,犹如醍醐灌顶觉得:原来这个知识还能这样理解啊;
- 深者觉得深,浅者觉得浅,一个字叫透,只有打透它,才能讲好。
- 额外说一句:如果你问一个人问题,这个人回答:你以后达到某种情况下就理解了,这其实就是这个人本身自己不够理解,自暴自弃的表现。
怎么才能打透,我找到了榜样。
我的女儿(棠棠)未来我准备让她接触接触“奥数”,我找到了奥数的老师,这些人是真正能讲透的人。
我出个题目:如何跟小学生讲明白鸡兔同笼的问题,这是考验你能不能做好老师非常非常重要的标准,在一个笼子里,鸡和兔加在一起 35 个头,加在一起有 94 条腿,请问这个笼子里面有多少只鸡?多少只兔子?
深 | 透 |
---|---|
(列方程式) 鸡 + 兔 = 35 2 x 鸡 + 4 x 兔 = 94 (变形) 2 x 鸡 + 2 x 兔 = 2 x 35 = 70 ① 2 x 鸡 + 4 x 兔 = 94② (② - ①) 2 x 兔 = 94 - 70 ➔兔子=12 | 鸡有 1 个头, 2 只脚 兔有 2 个头,4 只脚 请兔子站起来,2脚变2手,现在鸡兔共有多少脚? 2 x 35 = 70 只 脚 |
我想读者们都会,因为都学过,二元一次方程。
对你们来说太简单了,列个方程式,鸡和兔加在一起 35 个头,一个鸡有两条腿,一只兔子四条腿,加在一起 94。
第二步,我们怎么都学过怎么解方程,把上面的方程 ① × 2,然后 ② - ① 嘛,就减出来了,所以兔就是 12 只。
你们都会做这个题目吧,但是这个问题不是说怎么解出来,是如何向小学生讲明白怎么做,小学生听完之后什么感觉?他根本不懂什么叫方程。
向小学生讲明白这个事,怎么讲?
鸡有两只脚,兔有四只脚,真的是这样吗?不对,兔子有两只脚,另外两只是手,鸡和兔都是两只脚,35 个头,都有两只脚,加在一起是多少只脚? 70,简单吧。你说 94 里剩下的 24 是“手”,那是多少个兔子的手呢?一个兔子两只手,24 除以 2 是不是 12 只兔子,小学生是不是就听明白了。
但是你让大学生来听,他会一身冷汗,他会觉得原来我以前并不了解为什么是这么解出来的,他背后其实有更深刻的对这个题目的理解和它的道理。
所以,一个真正的老师必须得透彻的理解这件事,必须得把自己最贵的东西,他真的觉得这一行有非常非常深刻的理解。
过去我也上过小学,你也上过小学,讲小学生有什么问题呢?博士才能来讲小学的知识。这是我做私教这些年学到的一个非常重要的事情,就是让浅者觉得其浅,深者觉得其深。
所以,每一位知识服务者,都应该是这个行业里的老师。
3. 这些年心得语句「思想·法则」
此部分有点像“名言警句”,选择性阅读。但是我推荐你阅读,在往日的学习中带上这些思考。
手札 1:起的最早的是理想主义者,跑的最快的是骗子,而胆子最大的是那些冒险家,害怕错过一切,疯狂往里冲的是韭菜,而真正的成功者,可能还没有入场。
手札 2:我们有时候不仅仅要看选择项以内的答案,也要去思考选择项以外的答案。——黄家宝 2022 年 05 月 16 日
手札 3:每个人用 AI 都是千篇一律的直接问,那每个人如果问题相似并且是同一个大模型的话,那么 AI 的回答的结果是很基本上是一样的,不会有太大的变化。那真正的不一样的核心点就是我们人赋予他一个核心思想、核心点,这样才能造就 AI 的真正生产力。AI 再厉害,也得有我们人给它核心!——2025 年 04 月 28 23:51:04
手札 4:在学习编程时,往往有学生单纯习惯性脑补代码某一阶段的输出结果,而无法进行下一步编写。此时,适当的输出(print()
)可以减轻学习压力。——2025 年 04 月 28 23:52:46
手扎 5:先实现功能,再去优化,否则一切会很乱。——AI悦创 2022年6月2日
手扎 6:凡是你不能清晰写下来的东西,都是你还没有真正理解的东西。——2023 年 01 月 29 日 14:40:30
手扎 7:有些事情本很遥远,你争取它就离你很近了!——2023 年 01 月 30 日 11:23:35
手扎 8:日本深度有了,但是没有出路。Cynthia——2023 年 02 月 12 日 17:54:13「记录 Cynthia 课上交流」
手扎 9:语言的高贵,不取决于他的长短,而是取决于作者的心意。——与 FM 交流 2023 年 02 月 16 日 00:05:20
手扎 10:不要纯粹的思考,还有动手验证——高天琦上课 2023 年 02 月 26 日 20:27:04
手扎 11:编程应该是一种思维、一种创造、一种乐趣,这才是本该有的样子,而不是一种负担~——与 Jason 上课后 2023 年 07 月 07 日 23:04:10
手扎 12:当一件事情,超出你的认知,你就会变得小心翼翼,生怕生出变故。比如,我想到这个的原因是:我花钱找人调试麦克的情景,给我安装了一堆我不认识的软件,以至我当时直接问:这个我之后升级系统之类的会不会影响之类的,她说不会。但我内心并没有好些,因为我并不知道真的会不会发生以及我怎么解决我有可能遇见的问题。虽然,最后没有调试好,我申请退款了。——收拾桌面思考🤔️到麦克风 2023 年 07 月 25 日 13:53:47
手扎 13:群里没有大佬,我只是比你们早接触早研究而已,真正的大佬是开发这些开源工具、模型等的人,愿我们都虚心的学习~——认知1 2023 年 07 月 27 日 14:09:12
手扎 14:普通人,在 AI 下如何赚钱?别异想天开了,你想这个的时候,你已经不是成为别人的韭菜,就是成为韭菜的路上。现在需要学这个是未来做辅助和增强竞争力,想直接变现少做梦了。这也是很多互联网上的“卖点”。能赚钱的,不是长期准备或者就在装大佬割韭菜。
学这个有用吗?有,只要你是想融合到你自己的领域这有用,或者是为未来做准备。但是你是想变现为目的也行,但是别想的太简单就行。——认知2 2023 年 07 月 27 日 14:10:44
手扎 15:国外是看家庭情况卷,国内是不看家庭情况卷。——张扬 2023 年 10 月 24 日 21:31:14
手扎 16:现阶段的 AI 还需要活人去填补~AI悦创 2023 年 11 月 10 日 11:24:19
手扎 17:做什么的事情的时候,如果感觉到麻烦,千万别懒别烦。此时,多想一步:有没有更方便的方法?这是一个内推力(内在动力)是推进你精进、学习的时机。——2023 年 12 月 30 日 11:24:34
手扎 18:有时候,不要只看局部。站的高点,站的远点,使我们有全局视角,这样往往更便于我们发现事物中所存在的关联关系或规律。——AI悦创 2024 年 01 月 01 日 23:17:10
手扎 19:爱不是某一次的集中表达,而是散落在日日中的平凡表达~AI悦创 2024年04月03日 16:10 (爱你我的老婆)
手扎 20:我发现所有的称呼,都无法彻底表达出我对你的深情~2024 年 03 月 08 日 20:09:15
手扎 21:现实当中,你会了。那代码就是你践行现实中的行为~代码工具——2024 年 06 月 28 日 22:43:02
手扎 22:移除重复字母保持顺序 编写一个函数 remove_duplicates(s)
,它接受一个字符串 s
作为参数,并返回一个新的字符串,该字符串包含 s
中的字符,每个字符只出现一次,并保持它们在原字符串中的顺序。 例如,remove_duplicates("banana")
应返回 "ban"
。
你以为的结束,没准只是开始~——2024 年 06 月 28 日 23:25:14

手扎 23:我给你讲解的代码示例,是我认为你掌握这个知识点必不可少的演示。而你在理解这个示例过程中遇到的问题,才是真正值得你深入学习的地方。——2025 年 02 月 28 日 09:06:05 学习思维
手扎 24:学编程过程中,眼神不好,看不准代码有没有语法错误和不会是两码事!也就是已经给你正确代码抄了,你还不能找出自己抄写代码存在问题,那请不要把问题归咎于:不会。“不会”不背这个锅。——2024 年 09 月 29 日
手扎 25:只有你理解了过程才能创造研究。(你理解了过程,才能创造研究)/ 读书时被动的先了解,吸取信息作为思考的源泉。但推导能看见树木,思考能看见整个森林,要把搞清楚的权利交给自己。(张朝阳真是厉害,没想到!理科学霸对于读书也有独到见解!他推荐的“1/3读书法”效率特别高——即1/3时间思考、1/3时间读书、1/3时间推导。什么意思呢?就是在读书前先明确自己为什么要读这本书,想从其中获得什么信息或知识。带着具体的问题去读书,最后再去验证推导。)——2024 年 10 月 10 日
手扎 26:AI 可以帮我们处理事情,比如批量把 2025-02-28 09:06:05
时间转换成“年-月-日”,但是如果数据重要,你还会给 AI 操作吗?所以,有时候很重要的数据,还是得靠自己去处理,而不是 AI。——2025 年 04 月 29 日 07:03:36
手扎 27:恩格尔系数吃饭占比越少表明越有钱的本质是:吃饭肯定是要花钱的,所以越有钱也会在其它方面花钱,物质富足后,才会开始追求精神层次的富足。所以除食物的开支,其它的开支越多,间接导致食物开支占比减少。但食物开支真的变少了吗?并不是,只是被其它开支“分担”了!——2024 年 10 月 15
手扎 28:有人学的快有人学的慢,和方法有关系和思维也有关系!——2024 年 10 月 15
手扎 29:在2024外滩大会上,“互联网教父”凯文·凯利谈到了 AI,他认为 AI 时代答案已经变得唾手可得,最有价值的是提出正确问题的能力。如果你是毕业生,那“学会如何学习”就是你必须要掌握的核心技能,因为有可能你两年后的工作甚至还没有被创造出来。——2024 年 10 月 16 日
手扎 30:题目:已经有了判断一个键在不在字典当中,那如何实现判断一个值在不在字典当中呢?问题转换思想💭:判断一个值在不在字典当中,当我们使用 .values()
时,问题就会变成:判断一个值在不在列表当中。用已有的知识解决未知的需求,才是我们要学习的目标🎯——2024 年 11 月 29 日
手扎 31:为什么笔记需要有大纲?如果没有大纲意味着找笔记需要从头看到尾并且不能跳过,为什么不能跳过?因为你不知道你需要的笔记在哪个区域,就只能从头看到尾查找。这就是告诉笔记需要用大纲的重要性,有大纲就可以快速定位自己所需要的笔记在哪个部分。——2025 年 3 月 5 日
手扎 32:有时候一个问题写不写的出来不重要,重要的是你进行了有效思考。这样我在讲解的时候,你的思维就会跟着我的讲解走。反之,直接讲解有可能能直接理解,但是思维无法及时的跟随着思路走。——2025 年 2 月 26 日
手扎 33:教育不是一味的输出,把找答案的过程还给孩子。——2025 年 03 月 10 日
手扎 34:我大学舍友很多人都在打游戏🎮,我自己是一直研究学习的。他们现在“混的并不好”,但不是说是玩游戏的问题。是没控制好学习和游戏的分配。例如:柯洁也会玩游戏,但围棋还是会一直练习的。所以:游戏不是原罪,是你那颗没控制的内心。——2025 年 03 月 18 日
手扎 35:学习计算机,未来不干软件这行,岂不是白学了。这时我就想到一个人大代表的话:(蒙曼)读书记不住没关系,因为读书跟吃饭喝水一样,它是一个长期的过程,那水的作用是什么呢?是滋养我们的身体,每一滴水都是有价值的。读书的作用是什么?滋养我们的心灵(灵魂)。你每读的一本书,其实都汇聚成你的审美观、道德观、价值观,这些东西对一个人才是至关重要。但是未来是一个科技时代你会、懂一点计算机就可以参与这个时代,而不是旁观这个时代。类似科幻电影中,不懂技术的普通人普通生活中(并不是说普通,平凡生活不好),懂技术的才有参与其中。——2025 年 03 月 18 日
手扎 36:研究的时候要控制单一变量,这样才能更好的控制实验结果。“例如:你要研究吃饭对身体的影响,那么你就要控制其他因素,例如:睡眠、运动等。变量只能有吃饭这一个,这样你才能更好的研究吃饭对身体的影响。”如果你的同时的变化因素太多,则无法知道是哪个变量(变化)导致而产生的结果。——2025 年 03 月 30 日
手扎 37:上大学的方式:特招、高考。如果小悦被特招进清华大学,清华大学还有必要看小悦的高考成绩吗?——生活中是代码,代码也是生活。互相源自~程序员是人和机器的桥梁。——2025 年 03 月 26 日
手扎 38:教育不是你找 100个教育专家聊就能解决你孩子的学习问题,是聊了之后有启发且要去行动,否则一切白谈。并且找老师聊天,知识潜意识当中以为这样就可以减少焦虑,实质性是没有解决的!——2025 年 03 月 20 日
手扎 39:在记笔记时,不要试图擦出笔记中的错误,要保留笔记的错误,在错误的附近记上正确的结果,错误是我们的学习见证,我们来时的路!(因为这样会导致你的笔记变得不真实。而是应该在笔记的下方或者旁边写上正确的内容,这样你的笔记就会变得更加真实。)更加有效果。(不要试图擦掉自己以往的学习错误)——2025 年 03 月 26 日
手扎 40:不要以为绘本只是给小孩看的,好的绘本其实也是适合给大人看的。因为好的绘本其实是有深度的,甚至比一些书籍还要深刻。家长看了,还可以不知不觉的言传身教给小孩......——2025 年 03 月 28 日
手扎 41:很多人在学习代码的过程中,经常为了备份、懒,不去删除多余的代码,从而不能达到针对有效的运行。换句话说:明明要看、思考的是程序 2,但是程序 1 运行影响着你观察程序 2,自己无形增加干扰因素。(省字版:多余的代码要去掉,否则会增加你的学习压力。)——2025 年 03 月 27 日
手扎 42:每当给私教学生讲解到某个章节(变量、字符串、列表、数字型等),学生都忍不住问我一个问题:老师有什么作业或者练习让我课后练习一下,我想巩固一下。其实我心里明白,学生问这个问题的原因是因为他们想要一个明确的目标去练习,而不是单纯的听课。其实我也很想给学生布置作业,但是需要知道编程这个学科的特殊性,知识点交叉性太强,稍微要出题就要涉及后续还没学的语法。而前面的语法比如:变量、数字型,这些讲完,其实也出不了什么新颖的题目。总不能让你们反复创建不同的变量?反复编写加减乘除代码?这些你本来就会,没有必要再去练习,这样的行为只是假性练习,没有意义。如果还是为此出题,其实是为赋新词强说愁!——2025 年 03 月 28 日
手扎 43:人工智能🤖是没有创意的,特别是在写书稿的时候。只有人提供创意和灵感方向,才有可能让人工智能完善。当然,偶尔会有那么一两次给出一些平时没注意到的点。终归还是有点用处的吧......谁知道呢~——2025 年 03 月 29 日
手扎 44:写代码的正确原则:原则1:你先想好实现的逻辑后,再开始写代码;原则2:如果你无法一次性想好完整的实现逻辑,那么你就先一边写一边想,先写你想好实现逻辑,去尝试。去人为的,强制性去不停的激发大脑思考。——2025 年 3 月 29 日
手扎 45:自己在平时在学习编写代码时,需要注意什么?避免编写完代码,直接运行得出答案,要让自己用大脑去思考、运行得出答案,然后再去运行验证。要对答案、结果有个期待,不要让自己失去真正有效学习与思考的机会。——2024 年 11 月 12 日(视频版:https://www.bilibili.com/video/BV13bm4YREh5)
4. 重点:是否需要频繁练习?
这个问题,仁者见仁,智者见智。
每当给私教学生讲解到某个章节(变量、字符串、列表、数字型等),学生都忍不住问我一个问题:老师这次下课后,有什么作业或者练习让我课后练习一下,我想巩固一下。
其实我心里明白,学生问这个问题的原因是因为他们想要一个明确的目标去练习,而不是单纯的听课。其实我也很想给学生布置作业,但是需要知道编程这个学科的特殊性,知识点交叉性太强,稍微要出题就要涉及后续还没学的语法。这也是为什么很多学生无法正确学会编程的原因,很多老师是不会考虑“交叉性”这个问题,而是直接图省事直接出题目,不考虑学生是否学过,导致只有少部分学生会做,大部分学生被劝退。
而前面的语法比如:变量、数字型,这些讲完,其实也出不了什么新颖的题目。总不能让你们反复创建不同的变量?反复编写加减乘除代码?这些你本来就会,没有必要再去练习,这样的行为只是假性练习,没有意义。并且这种练习只是练习熟练度,没有必要。如果还是为此出题,其实是为赋新词强说愁!
举个例子:
我用一个你我都熟知的数学来说,先问你个问题:「老外用计算器是数学不好吗?」
你可以先想想,然后再继续阅读。
我的解答是:这件事只是我们教学重点的不同,像我们中国的学生很多时候,是在训练孩子们的熟练度。(熟练程度)
我们训练了很多列竖式计算的问题:乘法、除法、加法、减法,这个要是国外的孩子会怎么样?——根本都不会,他们要进行数学计算就得用计算器。因为国外小孩压根没学过“竖式”这种方法,他们的重点仅仅在于:理解加减乘除就可以了,不关心加减乘除的熟练程度,也不会对熟练程度做过多的训练。
此时,你要是想问我:哪种方式更好?
其实,我个人觉得:有可能国外的这种方式还更好一些。
因为加减乘除这种知识,有了计算器之后,其实都没有太大的作用。我们真正需要训练孩子们的:「理解数学知识本身,而不是要把他们变成一个计算机器。」所以,进行大量的加减乘除竖式计算,意义不大。
上面提出问题了,接下来说说解决问题。
相比来讲,如果我们能把更多的精力用在:如何使孩子们可以使用所学的数学知识,解决一下现实生活中的问题,其实就是平时说的数学建模,有可能更有意义一些。
国外的孩子有可能加减乘除不太行,但是一到建模比赛就很厉害。上了大学之后,创造力也很强。
总之:不要把太多的精力放在熟练度的训练上,而是要更多的去培养孩子的创新能力。(巧手破万卷,实践胜空谈。)
回答编程也是一样的,编程要练习也是没错的。适当的练习可以放在入门编程的后续,在学完字符串后就可以逐步开始练习。但是这种练习不要让自己陷入“熟练度”的练习,而是针对性的练习几次之后,放在学完编程基础之后,我想要做一些什么上。也就是多多思考自己后续要做什么,或者用已经所学的技术,可以做个什么有意思的小程序。
5. 本书资源
- 在线编程平台:https://codemark.bornforthis.cn/editor
- 代码分享平台:https://codemark.bornforthis.cn/sharecode
- pythontutor 可视化平台:https://pythontutor.bornforthis.cn/visualize.html#mode=edit
- 本书最新消息及后续资源:https://bornforthis.cn/Books/
- 你都可以通过微信公众号:AI悦创,联系到我。
6. 致谢
在此,我要感谢老婆、家人、杨编辑、甜甜同学。
在正式开始之前我要致谢:我的妻子,因为刚好是宝宝出生的前几个月。正是带娃的辛苦阶段,如果没有老婆蓉宝的支持,不会有我的专心写作。也感谢老婆作为本书的第一个读者,校验“编程思维”部分,保证零基础得以理解。还为本书的部分内容,提供了指导想法,得以更好的表达写作。
感谢“杨编辑”让我不只是停留在“做到”,而能够全面回顾自己走过的路,无论是弯路还是直路。也促使我对于学习编程的方式进行了大量的学术研究,而不只是作为一个十足的经验主义者。于“北京航空航天大学出版社”平台向公众分享学习与研究编程的方法,以及让我厘清了“编程思维”的完整概念。非常非常感谢,杨编辑给我三年的时间进行书写本书!
感谢我的家人,再次期间的理解与包容,统一支持我出书这件看起来“不是赚钱”的事情。
最后感谢我高中同学“甜甜”,因为我写的都是 Markdown 格式,无法直接交付给出版社。所以聘请“甜甜同学”为本书的初步排版者,她投入了大量的时间精力进行本书的初步排版与内容校验,保证内容完整性。
最后:技术发展的太快,以至于作为程序员的我都一度陷入怀疑,是否还需要学习编程语言。不过此书得以出版,足已说明一切。
7. 资料「不放入书稿」
7.1 会与不会的例子
例子 1:【整理账单】——不会用 Excel 的痛苦
没学 Excel 时:
月底要整理几十张购物小票,你只能拿计算器一笔笔加,出错了还得重来。
学了之后:
你用 Excel 写个简单的 =SUM 公式,几百笔账目一秒统计完,还能自动出图表。
思维变化: 从“手动累加”到“公式一劳永逸”。
例子 2:【修照片】——不会用修图软件的笨办法
没学修图时:
拍了一张好照片,结果背景乱糟糟,你只能叹气说“算了”。
学了之后:
你用 Photoshop 两分钟抠图换背景,照片像大片一样干净漂亮。
思维变化: 从“忍着瑕疵”到“主动改善”。
例子 3:【搬家具】——不知道有滑轮小车
没了解小工具时:
搬家要抬一张超重的桌子,你只能咬牙硬扛,累到怀疑人生。
学了之后:
你用搬家具的滑轮小车,一推就走,轻松搞定。
思维变化: 从“只能靠蛮力”到“用工具省力”。
例子 4:【找资料】——不会用高级搜索技巧
没学过搜索技巧时:
想找一份好用的PPT模板,在网页里翻了半天,全是广告。
学了之后:
你用 Google 的 filetype:pptx 或加上精准关键词,几分钟找到最适合的资源。
思维变化: 从“盲目乱找”到“精准命中”。
例子 5:【烹饪】——不会用厨房小技巧
没掌握技巧时: 炒菜总是油烟四起、锅粘底,以为是火候问题。
学了之后: 你知道提前预热锅、加点水蒸气,就能让锅子自然不粘,轻松又健康。
思维变化: 从“反复试错”到“知道方法”。
“哦,原来学习是为了在未来多一条路,多一种方法”,这样更有共鸣!
在生活中,很多时候,我们以为自己已经尽力了,只是因为不知道还有更简单的方法。
不会用 Excel,只能一笔笔加;不会修图,只能忍着丑;不会用小工具,只能硬扛。
不是我们不聪明,而是没有掌握新的工具和思维。
学习,并不只是为了在课本上、在工作中打分或者完成任务。
真正重要的是:它悄悄在你心里,种下一种新的可能性。
让你在遇到问题时,脑海里不会只冒出“我只能慢慢做”“只能硬撑”“只能放弃”,而是会想到:
“等等,有没有更快的方法?”
“能不能用工具搞定?”
“有没有一个更聪明的办法?”
学习,就是在不断为你打开这些新的选项。
未来遇到困难,你会感谢今天默默积累的自己。
因为你已经不再是那个只能苦苦硬撑的人,而是一个懂得寻找捷径、用智慧解决问题的人。
这,就是学习最有力量的地方。
7.2 教育理念
更新日志
9cfa8
-于71a5d
-于1ac7d
-于8c78c
-于03f19
-于6c23e
-于3a27f
-于eacff
-于6696b
-于4ef58
-于f70f4
-于73eac
-于a3f3d
-于c3053
-于a563b
-于bc507
-于c60ea
-于b60a7
-于f81e4
-于6a484
-于3de33
-于c508e
-于33ce7
-于3dfbf
-于3c202
-于6c01e
-于10b53
-于6fcf7
-于e97c5
-于75ad1
-于3e936
-于18d85
-于401a2
-于c8e72
-于a6da6
-于63f49
-于d2a42
-于93631
-于f5267
-于b9f4e
-于39e43
-于33106
-于f922c
-于b4f7d
-于63a04
-于1c35a
-于d18e7
-于d2f64
-于cbb3a
-于610fe
-于f08aa
-于76989
-于86c50
-于027da
-于