Python学习日记Day2:条件判断与循环的编程复盘方法

发布时间:2026/10/10 11:19:39
Python学习日记Day2:条件判断与循环的编程复盘方法 昨天敲下第一篇学习日记的时候说实话我自己都没把握能坚持几天。今天能再次打开笔记、写下“day2”这个标题本身就值得记录一笔——至少我没有在第二天就断更。写学习日记这件事最大的敌人往往不是“学不会”而是“今天太累不想记”“感觉没什么可写的”。而Day2恰恰是整个学习日记系列里最危险的节点新鲜感还在但正反馈还没出现学的内容开始从“兴趣驱动”转向“刻意练习”放弃的成本看似最低但坚持下来的收益恰恰从这里开始积累。这篇日记除了记录我今天具体学了什么更重要的是展示我如何把Day2的零散学习过程整理成一个可以复用的复盘样本。如果你也正在用学习日记记录自己的成长或者正准备开始却不清楚第二天应该怎么写这篇文章里的模板、踩坑和思考方法应该能给你一些参考。1. Day2的定位从“新鲜感”切换到“习惯感”1.1 为什么第二天最容易断更第一天学习的人往往有一种“起步者红利”安装软件是新的、敲出第一行代码是新的、看到输出结果也是新的。Day1的日记即使只写了“我今天装了环境跑通了hello world”也会因为“第一次”而显得有价值。但到了Day2状态完全不同——你已经不是第一天那个什么都不会的小白了可你又还远谈不上熟练。这个尴尬的中间地带会带来两种典型心理一种是“我昨天学了好像也没记住什么”另一种是“今天如果学得不够多是不是就说明我没天赋”。这两种想法都是学习日记的天敌。前者让人沮丧后者让人焦虑而沮丧和焦虑最容易导致断更。我给自己定的原则是Day2不谈天赋只谈“重复”和“结构”。学得慢是常态记不住也是常态真正要抓的是能不能把Day1埋下的线头在Day2接上。1.2 先复盘再前进Day1的内容必须能被Day2调用我写Day2日记前干了第一件事把Day1的日记重新读了一遍。当时觉得自己写得很清楚了但隔了一天再看发现有好几个地方写得非常潦草。比如我昨天只写了“变量就是用来存储数据的容器”但完全没写清楚“容器”和“数据”分别指的是什么也没记录当时困惑过的问题。所以我在今天学习开始前的15分钟做了一次小小的复盘把Day1的内容压缩成了三句话Python中用等号给变量赋值变量的名字是标签不是盒子。常见数据类型里int是整数float是浮点数str是字符串bool是布尔值。type()函数可以查看一个变量的类型。别小看这个压缩过程。把昨天一大篇学习笔记压缩成三句话本身就是一次“主动回忆”——大脑被迫重新提取信息而不是被动地看着笔记觉得“我都会了”。我发现Day2最好的开场不是直接学新东西而是先把旧内容“提出来”用一遍。这也解决了学习日记最常见的毛病每天写每天忘日记变成了流水账而不是复利工具。2. 今日核心知识点把“看懂”变成“会写”Day2的主题是“控制流”——也就是条件判断和循环。按照大多数教程的章节安排这是继变量和数据类型之后最理所当然的下一步。但“理所当然”容易让人产生一种错觉看教程时觉得秒懂合上教程自己动手写就卡壳。所以今天我不打算只抄一遍语法而是把重点放在“怎么根据需求写出正确的控制结构”上。2.1 条件分支不是if语法而是判断逻辑if语句的基本语法没什么神秘的score 75 if score 60: print(及格了) else: print(还需要努力)这段代码很好懂。但Day2真正要练的不是“看懂if怎么写”而是“把一个现实问题翻译成判断条件”。比如我给自己出了一个练习根据一个数字判断它是正数、负数还是零。于是写下了number -5 if number 0: print(正数) elif number 0: print(负数) else: print(零)这个例子看起来简单但背后有一个容易忽视的细节书写顺序。Python执行条件判断是从上往下依次检查的一旦某个条件成立后面的分支就不会执行。所以为了把“正数、负数、零”三选一的逻辑写对必须把条件设计成互斥关系——否则就会出现一个数同时满足两个条件的情况。这个“写条件前先想想多个条件是否互斥”的思维比背十个if例题都管用。2.2 循环结构搞清楚“哪些代码在重复”循环解决的问题只有一个重复动作。现实里没人会手动print一百次但用for循环可以for i in range(1, 101): print(i)这里要注意range(1, 101)的细节——它包含起始数字1但不包含结束数字101所以实际打印的是1到100。这个“左闭右开”的区间规则是新手最容易踩的坑之一在Day2专门记一笔。不过只学会for的语法还不够。我给自己加了一个练习计算1到100所有偶数的和。很多人第一反应是写一个很长的if嵌套循环我的写法是total 0 for i in range(1, 101): if i % 2 0: total i print(total)这里用上了取模运算符%i % 2 0就是在判断i是否能被2整除。最终算出来的结果是2550验证了一下没错。这个练习的真正价值在于它把Day1学的变量赋值、Day2学的条件判断和循环串在了一起三天内容形成了一条完整的链路。学编程最大的爽点就在这——知识不再是零散的点了而是开始变成一条线。2.3 动手题用代码解决一个真实小问题学任何东西都得有出口。为了不让Day2的学习停在“语法都看了、练习也做了”的假熟练状态我给自己布置了一道贴近实际的小题让用户输入自己的年龄然后根据年龄给出不同的提示——18岁以下输出“未成年”18到60输出“青年和中年区间”60以上输出“老年”。我写出的代码如下age input(请输入你的年龄) age int(age) if age 18: print(未成年) elif age 60: print(青年和中年区间) else: print(老年)这个练习里有两个值得记录的坑。第一个input()函数返回的一定是字符串必须用int()转换成整数才能和数字比较。第二个第二个分支的条件我写成了age 60而不是age 18 and age 60——因为Python的if是从上往下执行的运行到第二个分支时第一个分支age 18已经被排除了所以隐含条件是age 18不需要重复写。这个小技巧叫“利用分支顺序简化条件”。今天能把这一点想明白我觉得比多抄十个例子都值。3. 学习日记的记录方法三栏式告别流水账Day1的日记我写成了时间流水账几点几分做了什么、截图、复制代码。写得累回看的时候却找不到重点。所以今天我给自己设计了一个更适合长期用的日记模板叫“三栏式学习日记”。3.1 模板长什么样三栏式不是真的画三个栏目而是把日记内容分成三个固定区域今日学到什么、今天卡在哪、明天做什么。我用一个简单的Markdown表格固定下来区域要写的内容必须满足的标准今日学到什么列出今天掌握的知识点每条都能用自己的话解释而不是抄书今天卡在哪记录遇到的所有错误和卡顿至少写清楚报错信息和排查过程明天做什么设定明日的最小学习目标必须小到“不可能完不成”这个模板最核心的思路是“边学边记而不是学完再记”。我通常会在学习过程中随时把遇到的问题丢到一个临时记录区等学到一个小节点后再整理到三栏对应区域。这样既不会打断学习节奏也不会在晚上写日记时抓破脑袋想“我今天到底干了什么”。3.2 为什么要把“错误”单独写一块大多数人写学习日记会自然倾向于记录“我学会了什么”而羞于记录“我搞砸了什么”。但学习日记的能量密度恰恰来自错误记录。教会你东西的从来不是成功案例而是那些让你卡了二十分钟的报错和Bug。所以我在模板里特意把“今天卡在哪”当成一个必填栏目。标准也很简单至少要写清楚“我做了什么、出现了什么现象、我如何排查、最终怎么解决”。哪怕解决方法只是“我把中文输入法切成了英文输入法”也要写。因为不写下来下一次遇到同样问题你大概率还是要花二十分钟。3.3 工具选择笔记软件加标签体系工具不需要复杂我目前用的是最普通的云笔记软件配合三个标签#学习日记 #Python #复盘。所有Day2的学习记录都放在同一个笔记本里用日期作为标题前缀。之前也试过用Notion搭一个花哨的看板后来发现维护看板本身变成了一种逃避学习的借口——工具是为了服务学习过程而不是替代学习过程。对工具我的建议就一句话只要能支持文字、代码块和随时检索就够用了。等你写了三十篇、五十篇学习日记之后真正起作用的不是笔记软件多好看而是一套清晰的内容组织方式。4. Day2踩坑实录错误代码里藏着的认知偏差今天踩的坑不算多但每一个都很有代表性。我把完整排查链路写下来因为学习日记如果不记录排查过程就失去了大半价值。4.1 缩进错误语法没错但运行就报错我写第一个if练习的时候把print语句和if写到同一行偏左侧的位置运行后立刻出现了报错IndentationError: expected an indented block这个报错翻译过来就是“缩进错误期望一个缩进的代码块”。Python不像其他语言用花括号或者begin/end来标明代码块边界它完全靠缩进。少一个空格或者多个空格都会导致结构错乱。排查过程其实不复杂先看到报错信息里提示的是第几行再去看那一行的缩进情况发现果然少敲了四个空格。但这件事引起的思考比修复更重要——我之前一直以为“缩进只是美观问题”现在才意识到在Python里缩进就是语法的一部分。这也解释了为什么网上很多老手建议编辑器把缩进设置为四个空格而不是Tab因为混用Tab和空格时代码看起来没问题运行时却会报错属于最难排查的隐形错误之一。4.2 中文符号导致的“幽灵报错”第二个坑更隐蔽。我在写年龄判断练习时编译时报了一个语法错误SyntaxError: invalid character (UFF1A)看到UFF1A这个编码才反应过来问题出在哪——我在if条件的右括号后面不小心打了一个中文全角冒号而Python只认英文半角冒号。因为输入法忘记切换这种错误在中文环境下极为常见而且排查起来特别烦人因为肉眼很难在代码里分辨出全角和半角的区别。解决方法是把输入法调整成“英文标点模式”或者在编辑器中开启“显示空白字符”功能。但从学习角度来说这个坑很值得记下来因为遇到一次之后几乎一辈子都不会再忘。4.3 变量覆盖代码能跑但结果不对最有趣的一个坑是变量覆盖问题。我想写一个程序分别计算1到50的和以及1到100的和。第一版代码是这样total 0 for i in range(1, 51): total i print(1到50的和是, total) total 0 for i in range(1, 101): total i print(1到100的和是, total)这段代码能正常跑输出也正确但问题在于第二个循环里我重新把total赋值为0如果忘了这一步结果就会变成“第一个循环的累加结果再加上1到100的累加结果”。这就是变量覆盖——同一个变量名在不同位置被反复赋值如果对变量的“当前值”没有清楚的追踪就会出现“代码能跑、逻辑全错”的情况。排查这种问题的思路不是看语法而是沿着变量的值变化过程走一遍。我的做法是每行代码都标注出此刻total的值比如初始0第一次循环后变成1第二次循环后变成3……哪怕只标注前两步整个流程都会清晰很多。这也是学习日记里非常推荐的“手动执行”练习把代码当作一条指令序列自己扮演CPU去执行一遍。5. Day2效率优化的三个动作让学习日记真正反哺学习写学习日记不只是为了“记录”核心目的是让第二天学得更好。Day2的实践经验告诉我下面三个动作对提升学习效率帮助最大。5.1 主动回忆合上教程先写一遍今天学完if和循环后我没有立刻开始写这篇学习日记而是先把教程页面关掉试着用空白编辑器写出“判断一个数是否为正数”的程序。这个过程确实痛苦写的时候甚至忘了elif具体的拼写但等写完再去对照教程记忆深刻程度远超看十遍示例代码。原理我在Day1笔记里写过被动复习比如反复阅读、高亮标注带来的熟悉感是假的主动回忆才是让大脑真正建立提取路径的方式。所以学习日记的“今日学到什么”栏目我要求自己合上教程写完写完再回头核对。5.2 间隔重复建立“复习队列”Day1学的变量和type()函数今天在写循环练习时用到了今天学的if判断明天学列表时大概率用到。我给自己建了一个简单的“复习队列”每次开始学习前从过去三天的学习日记里找几个知识点不翻笔记、直接在白板上默写或口头复述。答上来就划掉答不上来就重新看一遍原笔记并重新写一个相关练习。这个方法针对的是“学过就忘”的顽疾。因为学习日记如果再不复盘那就是单纯的心理安慰。5.3 最小行动单元当天任务只设一个“必须完成”Day1我列的待办清单很长结果没完成几项产生了挫败感。Day2我调整了策略每天只设一个“必须完成”的学习目标其他都是可选超额任务。比如今天我给自己的必须完成项是“独立写出一个带条件判断的程序”其他诸如“预习下一章”“做十道练习题”全部列为可选。不要小看这个动作。学习日记能否坚持很大程度取决于每天是否获得“完成感”。如果把目标定得过高连续几天完不成心态就会崩反过来每天都完成一个小目标积累的正反馈足以支撑你写满三十天、六十天、一百天。我见过太多人不是倒在难度上而是倒在“计划完美而执行落空”上。除了这三个动作我还想特别强调一点学习日记的“day2”和“day29”写法应当不同。Day2还处在需要建立习惯的阶段所以日记里应该多记录学习本身少规划宏大蓝图。等到Day30之后学习开始进入平台期那时候再在日记里加入阶段性总结和方向调整效果会更好。罗马不是一天建成的学习日记也一样先保证day2不放弃才配谈day200。写到这里今天的Day2学习日记就记完了。回看今天的全过程我最想分享的一条经验是第二天学习的核心不是“学更多”而是“接住第一天”。我用了15分钟复盘Day1花了约一个半小时阅读、练习和踩坑最后又用40分钟整理成这篇日记。整段时间里最有效率的动作反而是合上教程、默写代码的那几分钟。如果你也在写学习日记明天当你准备放弃时不妨试着把目标缩到最小——哪怕只写三行代码、只记一个知识点也先保住“day3”这个编号。续上它比什么都重要。

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询