1. 做好笔记很重要
1.1. 遗忘是不可避免的
做好笔记可以最大程度的止损。 (遗忘后,可以较为快速的根据笔记学习,而不是要几乎完全从头学)‘
1.2. 做好笔记管理
1.2.1. 良好的目录层级
1.2.2. 笔记内良好的逻辑结构
1.2.3. 更多可以学习知识管理课程
有空可以学习知识管理的课程, 对日后学习帮助非常大!!!
1.3. 笔记软件推荐(公司电脑需谨慎)
No.1 Obsidian (开源的, 自己电脑用免费, 但是商用需要买许可)
No.2. Flowus (国产版本Notion,勉强可以用用 )
2. 如何让大脑对学习成瘾
2.1. 第一招: 微习惯
2.1.1. 微习惯是什么?
微习惯是指通过非常小的、容易实现的行为或习惯来逐步改变自己的一种方法。它的核心理念是将大的目标分解为极小的、几乎不需要努力的步骤,进而帮助个体长期坚持并最终形成持续的正向改变。
微习惯的特点包括:
-
小而简单: 微习惯通常非常小,几乎不需要意志力。例如,目标可能是每天做一次俯卧撑、每天读一页书、每天写三句话等。这些行为看似微不足道,但通过长期积累,它们能够带来巨大的改变。
-
容易实现: 微习惯的设计非常容易执行,几乎不需要任何复杂的准备或者消耗太多精力。它们通常只需要几分钟时间,让人很容易坚持下去。
-
逐步积累: 微习惯的关键是持续性。虽然每次的行动都很小,但它们在日积月累的过程中能产生巨大的效果。例如,每天早晨喝一杯水或散步10分钟,虽然看似微不足道,但每天都做下去,身体和心理的健康会逐渐提升。
-
减少拖延: 由于微习惯的要求非常低,人们更容易开始。很多时候,人们会因为目标太大而感到压力,导致拖延。微习惯消除了这种心理障碍,因为它们的起点非常低,容易开始。
-
提高自信心: 一旦你开始坚持微习惯并看到效果,你会逐渐建立起信心,进而更愿意迎接更大的挑战。成功的小习惯能激励你坚持下去,逐步形成更大的目标。
2.1.2. 学习Python如何使用微习惯?
1. 拆解学习内容为微单元
- 将大知识点拆解成最小的学习单元:将Python的核心概念拆解为独立的小单元,确保每个单元都可以通过一个小笔记来进行理解。
- 每个单元可以包含以下内容:
- 核心概念:简洁明了地定义和解释这一概念。例如,数据类型:
int
(整数)、float
(浮点数)、str
(字符串)、list
(列表)等。 - 语法讲解:通过代码示例或文字,详细介绍该概念的语法结构和使用方式。
- 使用思路和技巧:例如,在学习循环时,可以讲解如何高效地使用
for
和while
,以及选择哪个循环更适合某个场景。 - 使用场景:举例说明该概念在实际编程中的应用,例如字符串操作如何在处理文本数据时用到,列表如何用在数据存储中等。
- 使用注意事项:提醒在使用时可能遇到的问题或常见错误,例如,整数除法和浮点数除法的区别。
- 使用案例:通过简单的例子来演示如何用这个概念解决实际问题。可以根据自己的理解来定制实际案例。
- 可根据理解程度灵活调整:根据自己的掌握程度调整笔记的内容深度。如果某个概念特别难懂,可以拆解为更细的小点;如果某个概念已经掌握,可以简化笔记。
- 核心概念:简洁明了地定义和解释这一概念。例如,数据类型:
2. 养成习惯,每天完成一个“微习惯”
- 保持每天的学习连贯性:每天都要安排时间来学习Python,哪怕是几分钟。微习惯的本质在于小步骤的持续积累。你可以设置固定时间段(例如早上或晚上)来确保学习连贯,不受干扰。
- 时间分配建议:每天可以安排10-15分钟专注学习,保持任务简单但有目的性。例如,今天学习
if/else
语句,并编写一个简单的代码示例,写下相关笔记。 - 细化目标:每天的微习惯可以是“完成一个小的笔记”或“学习一个新的Python语法点”。避免过于宏大的目标,保持每日任务的可执行性。
- 奖励机制:为自己设定奖励,每次完成一个微目标后,可以奖励自己一个短暂的休息,或者做一些自己喜欢的活动。
3. 回顾和复习也很重要
- 定期复习笔记:每隔一段时间(如每周或每月),回顾并复习之前的学习笔记。确保你理解了每个知识点,并能运用到实践中。
- 复习计划:
- 短期复习:每天或每两天复习之前做过的笔记,确保你对概念没有遗忘。
- 长期复习:每周进行一次大范围的复习,回顾本周所学的所有知识。通过复习,你不仅加深理解,还能识别自己需要进一步掌握的知识点。
- 小测验:可以定期自测,做一些小的编程练习或问题,检验自己对学习内容的掌握程度。
再多嘴一句, 复习时可以精简自己的笔记, 删去自己已经完全理解的知识, 防止随着笔记量增大, 复习成本的加剧。
2.2. 第二招: 正向反馈机制
2.2.1. 什么是正向反馈机制
正向反馈机制指的是当一个人完成某个行为时,得到了来自外界的积极回应或奖励,这种反馈激励个体继续进行相似的行为,甚至在某些情况下,反馈的强度和频率可能会促使个体不断增强或加速该行为的发生。
在心理学中,正向反馈通过加强某个行为后的奖励,使得这种行为变得更加频繁或持续。例如,学习或工作中的奖励(如得到点赞、称赞或其他奖励)会让人感觉到行为的成果,并产生更多的动力去重复这一行为。
正向反馈的特点:
- 即时奖励:正向反馈常常是即时的,能够迅速提供反馈,使个体明白自己的行为是正确的。
- 增加动机:通过奖励机制,个体的动机得到了增强,推动其继续进行某项行为。
- 自我强化:正向反馈不仅来自外部,还能帮助个体建立起更强的自信和自我效能感,从而形成自我强化的效果。
2.2.2. 如何在学习Python中使用正向反馈机制
发布文章或项目:在学习过程中,编写Python代码、解决问题或做一些小项目后,可以选择将这些内容发布到CSDN、GitHub或其他技术平台上。发布后,如果有用户点赞或评论,那么这些积极的反馈会给你带来成就感和动力。
反馈作用:每一次收到点赞、评论或问题回答的肯定,都会激励你继续深入学习,甚至挑战更高难度的编程任务。
2.3. 第三招: 学习时, 允许自己先搞出一堆辣鸡
在学习过程中,尤其是在面对难度较大的内容时,我们常常因为完美主义或对错误的恐惧而拖延。这个方法的核心是“允许自己做不完美的学习笔记”,甚至是“不完美的学习过程”。通过这种方式,我们能减少过多的自我批评,更专注于理解知识,而不是被完美的标准所束缚。
1. 来源:黑镜导演
- 这一思想来源于 **《黑镜》(Black Mirror)**的导演之一 查理·布鲁克(Charlie Brooker)。他在采访中提到,自己在创作过程中会“允许自己先做一些不完美的作品”,这种做法在创作中为他提供了灵感来源,并最终促使他改进和优化自己的作品。
- 对学习的启示:在学习中,我们常常会在笔记、理解或编写代码时产生不完美的记录或想法,这时不必过于焦虑。即使你的笔记一开始是“辣鸡”,它们仍然为后期的理解、总结和改进奠定了基础。允许自己先搞一些不完美的学习资料,可以帮助你更轻松地推进学习,而不是被完美主义拖慢进度。
2. 心理学分析:为什么要这样做
-
减少完美主义压力:
- 完美主义者往往在面对每个细节时过于挑剔,害怕出错,导致学习进展缓慢,甚至陷入拖延状态。心理学研究表明,完美主义常常让人感到焦虑和压力,害怕未完成的任务无法达到标准,从而产生逃避心理。
- 通过允许自己做一些“辣鸡内容”,你可以避免陷入无尽的自我批评中,专注于最重要的任务——理解和进步,而不是追求完美的外在标准。这种方法可以帮助你更快地进入学习状态,保持持续的学习动机。
-
鼓励快速迭代:
- 心理学中有一个概念叫做“快速失败”(Fail Fast),它指的是通过快速尝试、快速失败来迅速学习并调整方向。通过容许自己做出不完美的笔记,你可以快速验证学习内容是否理解并得到反馈。逐步改进学习方式而非等到完美才开始,这样的迭代过程更有效。
- 在学习Python等技术性较强的领域时,允许自己先尝试和出错,可以更快地理解问题和找到解决方案。例如,写代码时即使没有完美的逻辑,先实现功能,再修正错误,反而能帮助你更好地掌握知识点。
-
降低焦虑,减轻学习负担:
- 对于许多人来说,笔记和学习内容的完美要求会带来很大的焦虑感,甚至让他们因害怕做得不好而放弃。这种焦虑实际上会极大地影响学习的效果。
- 通过容许自己接受“不完美的笔记”,你可以释放这些压力,保持轻松和开放的学习心态,逐步进入学习状态,不再因为每个小错误而沮丧。
3. 使用AI
3.1. 使用AI生成高质量笔记
3.1.1 简单知识点
在学习简单的编程概念时,像 List(列表)、Dict(字典)和 If/Else(条件语句)这些基础知识点,使用一系列有条理的学习提示词可以帮助你更系统地掌握这些概念。以下是如何通过这些提示词来学习和整理笔记的方式。
# 1. list 的语法
# 2. list使用思路和技巧
# 3. list的使用注意事项
# 4. List的案例
要求: 1. 有完整的案例背景 2. 以语法讲解为重点, 使用思路和技巧为辅助
通过AI , 生成一篇这些的文章, 并发表到博客网站, 并时不时去CSDN看看点赞和关注, 这会极大的提高学习兴趣。
对了,别忘了, 生成的笔记最少要复习一次。
3.1.2. 比较难的知识点
比如函数、类\对象等知识点, 可以让AI生成大纲, 并且逐步迭代来完成知识点学习
列个Python类 学习大纲
AI生成的内容
### **Python 类学习大纲 - 初级自动化测试工程师**
#### **1. 面向对象编程基础**
- **1.1 理解面向对象编程(OOP)**
- 什么是面向对象编程(OOP)
- OOP的四大特性:封装、继承、多态、抽象
- OOP在自动化测试中的应用
#### **2. Python类的基础概念**
- **2.1 定义类和创建对象**
- 如何定义一个类(`class`关键字)
- 创建类的实例(对象)
- 构造函数(`__init__()`)的作用
- **2.2 类的属性和方法**
- 实例属性和类属性
- 定义方法(普通方法、静态方法、类方法)
- 使用`self`来访问实例属性和方法
- `__str__()` 和 `__repr__()` 方法的作用
- **2.3 类的继承**
- 子类继承父类的属性和方法
- 方法重写(Override)
- 使用`super()`调用父类方法
#### **3. Python类的高级特性**
- **3.1 类的封装**
- 私有属性和方法(`__`前缀)
- 保护属性(单下划线 `_`)
- `property()`函数使用:定义只读属性
- 使用getter和setter方法
- **3.2 多态和方法重载**
- 方法重载和方法重写的区别
- 在Python中如何实现多态
- 使用多态提高代码的可扩展性
- **3.3 类的抽象**
- 抽象类和抽象方法(`abc`模块)
- 何时使用抽象类
#### **4. Python类在自动化测试中的应用**
- **4.1 使用Python类组织自动化测试脚本**
- 将测试步骤封装到类中,提升代码复用性
- 使用类来表示测试对象(如WebDriver封装类、页面对象类)
- 使用类管理测试数据、环境配置等
- **4.2 面向对象的测试框架设计**
- 创建测试用例类和测试套件类
- 自动化测试中的数据驱动设计:使用类来存储和管理测试数据
- 使用类封装和调用测试工具和方法(如Selenium操作类、API请求类)
然后,我可以规划最小知识单元, 进行逐步迭代, 最终攻克类学习的难题。
3.2. 使用AI编码
我敢保证, 2年后的人类, 可以完全不用手写代码, 所以对于代码, 只需要看的懂就行。 所以尽可能把学习的重点放在: 如何使用AI完成一份满足自动化测试需求的代码。 换句话说, 把写代码这种苦活交给AI就行, 我们只需要把精力放在需求分析 、测试设计、代码质量把关和代码验收即可。