🐍

Python Kata

练功不一定能杀敌,但可以强身健体。

入门 225 人学习 84 章节
返回课程

章节目录

1. 筑基篇-Day1 print () 输出
print() 是 Python 最基础的招式,作用:把内容输出打印到控制台。
23
2026-10-11
2. 筑基篇-Day2 变量
变量就像一个个带标签的收纳盒,你可以把数据放进去,后面用这个名字就能取出数据。
11
2026-10-11
3. 筑基篇-Day3 字符串
字符串就是一段文本内容,可以是中文、英文、符号。
3
2026-10-15
4. 筑基篇-Day4 int /float 数字类型
Python 里有两种最常用的数字类型
10
2026-10-16
5. 筑基篇-Day5 input () 输入函数
功法:接收外界信息
49
2026-10-16
6. 筑基篇-Day6 类型转换 str /int/float
功法:数据变形术
47
2026-10-16
7. 筑基篇-Day7 算术运算符
功法:数值招式组合
23
2026-10-16
8. 筑基篇-Day8 注释
功法:代码备忘录
14
2026-10-16
9. 招式篇-Day9 比较运算符 > < >= <= == !=
功法:真假判官
8
2026-10-16
10. 招式篇-Day10 if 单分支判断
功法:条件选择
23
2026-10-16
11. 招式篇-Day11 if…else 二选一判断
功法:二选一抉择
8
2026-10-16
12. 招式篇-Day12 if…elif…else 多分支判断
功法:多级抉择
10
2026-10-16
13. 招式篇-Day13 逻辑运算符 and /or/not
功法:条件组合术
26
2026-10-16
14. 招式篇-Day14 布尔值 True / False
功法:真假本源
5
2026-10-16
15. 招式篇-Day15 复合条件判断练习
功法:条件组合实战
9
2026-10-16
16. 招式篇-Day16 实战 Kata:简易成绩等级判断器
功法:分支综合实战
14
2026-10-16
17. 内劲篇-Day17 while 基础循环
功法:循环往复
5
2026-10-16
18. 内劲篇-Day18 while 循环 + break 跳出循环
功法:中途收招
0
2026-10-16
19. 内劲篇-Day19 while 循环 + continue 跳过本次
无招式
0
2026-10-16
20. 内劲篇-Day20 for 循环基础 + range ()【
批量遍历招式
0
2026-10-16
21. 内劲篇-Day21 for 循环遍历数字区间
区间遍历
0
2026-10-16
22. 内劲篇-Day22 for 循环遍历字符串
符串本质是字符序列,for 循环可以逐个取出里面每一个字符,像逐个翻看一串手串上的珠子。
0
2026-10-17
23. 内劲篇-Day23 循环嵌套入门
内劲篇进阶招式,循环里面再套一层循环,如同双手同时打两套拳法。外层循环走一轮,内层循环就要完整跑完一整圈。常用于打印图案、二维数据遍历。
0
2026-10-17
24. 内劲篇-Day24 实战 Kata——数字累加器
内劲篇收官实战!把前面 while /for、range、变量、循环累加全部融会贯通。累加就像往存钱罐里不断放硬币,循环一次,存入一笔,最后打开罐子查看总数。
0
2026-10-17
25. 兵器篇-Day25 列表 list 基础创建与取值
兵器篇开篇!列表是 Python 最常用的储物兵器,可以有序收纳一堆数据。就像兵器架,按顺序摆放武器,有编号,想要哪一把直接按编号取。
0
2026-10-17
26. 兵器篇-Day26 列表的增删改
兵器篇・列表进阶招式。列表这个兵器架不仅能存放武器,还可以追加、删除、替换里面的装备。四大招式:append 新增、pop 删除、del 删除、索引修改。
0
2026-10-17
27. 兵器篇-Day27 字符串常用方法(split、strip)
兵器篇字符串秘术!字符串自带两套实用招式 strip() 和 split()。strip 清理字符串首尾多余杂质;split 把一整段文本,切割拆分,变成列表,实现文本和容器的联动。
0
2026-10-17
28. 兵器篇-Day28 字典 dict 基础,键值对存储
兵器篇新兵器 —— 字典。列表是按位置索引查找;字典是用名字(key 键)来找对应的数据(value 值)。就像功法手册,通过功法名称,直接查到对应的说明,不用从头挨个翻。
0
2026-10-17
29. 兵器篇-Day29 字典取值与修改
兵器篇字典进阶招式。字典可以按键读取数据,也可以新增、修改键值对;还学会安全取值 get(),避免查找不存在的键直接爆出错,是实战高频保命招式。
0
2026-10-17
30. 兵器篇-Day30 综合 Kata——简易信息登记小程序
兵器篇收官大实战!融会贯通前面全部兵器招式:字符串处理、列表、字典、循环、判断、输入输出。 这个小程序用来登记多位修炼学员信息,把每个人信息存成字典,多个学员放进列表统一管理。
0
2026-10-17
31. 内功篇-Day31 函数基础 def 定义无参函数
函数就是封装好的招式,写一次,可以反复调用,不用重复抄写代码。def 就是用来定义招式的关键字。
0
2026-10-18
32. 内功篇-Day32 函数的参数(位置参数)
无参招式只能固定输出结果。位置参数就是调用招式时,按顺序传入材料,一一对应交给形参。顺序一旦乱掉,拿到的数据就会出错。
0
2026-10-18
33. 内功篇-Day33 函数 return 返回值
前面的函数只是在内部打印结果,招式打完,结果就留在原地。return 就是招式把成果返还出来,外部代码可以接住这个结果,继续二次加工。
0
2026-10-18
34. 内功篇-Day34 函数多个返回值
一招出手,不一定只得到一个结果。Python 支持一次返还多份战果,本质是自动打包成元组返回,外部可以一次性接收多个数据。
0
2026-10-18
35. 內功篇-Day35 默认参数
有些招式有常备的基础材料,如果调用时不额外提供新材料,就自动使用预设好的材料,这就是默认参数。不传参就用默认值,传参则覆盖默认值。
0
2026-10-18
36. 內功篇-Day36 关键字传参
函数功法导语:位置参数靠顺序对位,关键字传参靠名字对位。不用死记参数顺序,直接指定参数名传值,招式调用更灵活。
0
2026-10-19
37. 內功篇-Day37 局部变量与全局变量(作用域)
变量也有活动范围,如同江湖门派。全局变量整个脚本随处可用;局部变量只在函数内部生效,出了函数就失效。分清作用域,避免变量冲突。
0
2026-10-19
38. 內功篇-Day38 函数实战 Kata:写一个成绩判断函数
函数招式融会贯通,把之前多分支判断封装进函数。一次编写,反复调用,不用重复写 if 判断代码。
0
2026-10-19
39. 內功篇-Day39 不定长参数 *args
普通参数数量固定,*args 可以收纳任意多个位置参数,如同乾坤袋,能打包一堆位置数据放进元组,参数个数不再受限。
0
2026-10-19
40. 內功篇-Day40 不定长关键字参数 **kwargs
*args收纳一堆位置参数,而**kwargs如同储物锦囊,可以收纳任意数量的关键字参数,打包成字典。适合不确定会传入多少组键值对的场景。
0
2026-10-19
41. 內功篇-Day41 函数嵌套
招式之中暗藏招式,函数内部可以再定义函数。内层函数属于外层函数的领地,外部无法直接调用,适合封装内部逻辑,隐藏细节。
0
2026-10-19
42. 內功篇-Day42 综合 Kata:封装学员信息查询工具
函数模块全部招式汇总!把 def、参数、返回值、字典、循环全部融合,打造一个可复用的学员信息查询工具。
0
2026-10-19
43. 御险篇-Day43 什么是异常,常见报错类型
写代码难免遭遇险情。语法错误是招式写错,Python 一眼拒绝执行;异常(运行时错误)是语法没问题,但运行中途触发意外,程序直接中断。先认识三类最常见异常,看懂险情信号。
0
2026-10-19
44. 御险篇-Day44 try ... except 基础捕获异常
识别险情之后,学会护体心法 try-except。把可能出事的代码放入 try 守卫范围,一旦触发异常,就转入 except 执行,程序不会直接崩断。
0
2026-10-19
45. 御险篇-Day45 捕获指定类型异常
裸except不分险情全部拦下,好坏一并捕获,容易掩盖未知 bug。修炼进阶心法:只捕获指定类型异常,精准御敌,其他异常照常抛出。
0
2026-10-19
46. 御险篇-Day46 多个 except 分支,分别捕获不同错误
险情不止一种,多分支 except 如同多重防御阵法,识别不同类型的伤害,给出针对性处理方案。不同异常走不同的应急逻辑。
0
2026-10-19
47. 御险篇-Day47 else 分支:无异常才执行
try 负责试探险情,except 应对危机,else 是平安奖励区。只有 try 内部代码完全没有抛出异常,else 里面的代码才会执行。适合存放 “一切顺利时才运行” 的逻辑。
0
2026-10-19
48. 御险篇-Day48 finally 分支:无论是否报错,一定执行
try 探险、except 救险、else 庆功,finally 为收尾心法。无论 try 中是否发生异常,不管是正常结束还是捕获到错误,finally 里面的代码一定会执行。常用于关闭文件、释放资源这类收尾操作。
0
2026-10-19
49. 御险篇-Day49 主动抛出异常 raise
前面我们都是被动接住程序自动产生的异常。raise 是主动释放险情,当数据不符合我们设定的业务规则时,手动抛出异常,提醒调用者传入的数据非法。
0
2026-10-19
50. 御险篇-Day50 异常实战 Kata:给学员登记程序增加输入防护
综合运用 try-except、else、raise,给学员登记小程序加上安全防护。防止用户乱输入,程序不会轻易崩溃,同时校验业务规则。
0
2026-10-19
51. 御险篇-Day51 异常信息获取:as e 查看错误详情
捕获异常之后,还能提取异常自带的原始消息。as e 如同查看敌情简报,拿到错误的详细描述,方便日志打印、问题排查。
0
2026-10-19
52. 御险篇-Day52 综合 Kata:安全数字输入器
整合本模块全部御险招式:try、except、as e、循环、else。打造一个稳定的安全数字输入工具,反复接收用户输入,直到拿到合法整数为止,输入字母、符号不会让程序崩溃。
0
2026-10-19
53. 藏经篇-Day53 文件基础概念,open () 打开文件
想要读写藏经(文件),第一步就是打开藏经阁。open()就是 Python 的开门法门,建立程序和硬盘文件之间的通道,操作完成后记得关门(close)。
0
2026-10-19
54. 藏经篇-Day54 读取文本文件 read ()
成功打开藏经之后,read()就是一次性翻阅全卷的法门,读取文件里全部文本内容,返回成字符串。适合小体积文本,一键读出所有文字。
0
2026-10-20
55. 藏经篇-Day55 readline () 按行读取单行
read()是一次性通读全卷,readline()则是一行一行翻阅藏经。每次调用只读取一行内容,文件指针读完一行就往下移动一行,适合逐行处理文本,节省内存。
0
2026-10-20
56. 藏经篇-Day56 readlines () 读取全部行存入列表
readline()一行一行手动翻阅;readlines()一次性把藏经所有行全部取出,每一行作为列表里的一个元素。读完直接得到行列表,方便循环遍历所有文本行。
0
2026-10-20
57. 藏经篇-Day57 write () 写入文件(w 模式覆盖写入)
前面都是翻阅藏经,今天学习书写藏经。w写入模式搭配write(),可以向文件写入文字。⚠️ 重点:w 模式打开文件时,直接清空原有全部内容,小心误删旧藏经!
0
2026-10-20
58. 藏经篇-Day58 a 追加模式,在文件末尾新增内容,不覆盖旧数据
w 模式会直接销毁旧藏经,而a(append)追加模式,是在卷轴末尾续写文字,原有内容完好保留。文件不存在时,会自动新建文件。适合持续记录日志、不断新增记录的场景。
0
2026-10-20
59. 藏经篇-Day59 with 上下文管理器(自动关闭文件,推荐写法)
之前每次 open 后,必须手动调用 close 关门。一旦中间代码出错,close 有可能执行不到,藏经通道无法关闭。with是自动护持心法,代码块结束,自动关闭文件,不用手动写 close,也是行业推荐标准写法。
0
2026-10-20
60. 藏经篇-Day60 文件路径:相对路径基础
前面我们直接写文件名,本质用的就是相对路径。藏经(文件)放在哪里,程序如何定位它,就是路径之术。掌握相对路径,就能读取子文件夹、上层文件夹里的文件。
0
2026-10-20
61. 藏经篇-Day61 文件实战 Kata:把学员信息保存到 txt 文件
融合前面所学:列表字典、with 上下文管理器、文件写入。将内存里存放的学员档案写入 txt 藏经文件,程序关闭之后,学员数据依旧保存在硬盘。
0
2026-10-20
62. 藏经篇-Day62 读取 txt 文件,加载学员档案到列表字典
上节课我们把学员档案存入 txt 藏经;今天反向修炼,读取 txt 里保存的文本,解析数据,重新变回 Python 内存里「列表嵌套字典」的结构,实现档案加载。
0
2026-10-20
63. 藏经篇-Day63 判断文件是否存在(os 基础)
读取藏经之前,先探察藏经是否存在。如果直接打开不存在的文件,会触发FileNotFoundError。os 模块自带探察之术,提前判断文件是否存在,规避险情。
0
2026-10-20
64. 藏经篇- Day64 综合 Kata:本地文件版学员登记系统(读写存档)
融合藏经篇全部招式:with 文件读写、相对路径、os 判断文件存在,加上前面模块的函数、异常处理、循环。打造可以永久存档的学员登记系统,新增学员自动保存到 txt,每次启动程序自动加载历史档案,关闭程序数据不会消失。
0
2026-10-20
65. 铸器篇-Day65 面向对象基础:类 Class 与对象 object 概念
铸器第一步,看懂图纸与实物。类(Class)是图纸模板,对象(object)是按照图纸铸造出来的实例兵器。一张图纸,可以批量铸造很多个独立兵器。
0
2026-10-20
66. 铸器篇- Day66 class 定义类,实例化创建对象
看懂图纸的概念之后,今天亲手绘制兵器图纸。class关键字就是绘制图纸的法门,定义属于我们自己的类;然后依据图纸实例化,铸造出一个个对象。
0
2026-10-20
67. 铸器篇-Day67 init 构造方法,给对象绑定属性
图纸画好了,铸造兵器的时候直接刻上兵器的属性。__init__ 就是铸造时自动执行的锻造心法,实例化对象的一瞬间自动调用,用来给对象绑定专属属性。
0
2026-10-20
68. 铸器篇-Day68 实例方法(对象的行为函数)
__init__用来给兵器刻印属性,实例方法就是兵器自带的招式函数,属于对象自己的行为。只有这个类铸造出来的实例,才能够调用这套招式。
0
2026-10-20
69. 铸器篇-Day69 访问对象属性、修改对象属性
兵器铸造完成后,我们既能查看兵器刻印的属性,也能直接修改属性数值。属性就是兵器身上记载的数据,支持读取与更新,也可以在对象创建之后,动态新增属性。
0
2026-10-20
70. 铸器篇-Day70 类属性 vs 实例属性
属性分为两种:刻印在图纸本身的类属性,和铸造出来每个兵器独有的实例属性。类属性属于这一类兵器全体共享;实例属性只属于单个对象,互不干扰。
0
2026-10-20
71. 铸器篇-Day71 self 关键字详解
self是 OOP 铸器法门的核心暗号。很多初学者困惑 self 到底是什么。一句话:self 代表当前正在操作的实例对象本身。多个兵器,各自的 self 只会指向自己,互不干扰。
0
2026-10-20
72. 铸器篇-Day72 继承基础:子类继承父类
继承就是图纸复刻之术。已有一张成熟的父类图纸,子类可以直接继承父类全部属性与招式,不用重复编写;再在子类上新增独有的属性和方法。实现代码复用,是面向对象三大特性之一。
0
2026-10-20
73. 铸器篇-Day73 方法重写(子类覆盖父类方法)
子类继承父类,会直接拿到父类全部招式。方法重写:子类定义和父类同名的招式,当子类对象调用时,优先执行子类自己写的这套,直接覆盖父类原版招式。
0
2026-10-20
74. 铸器篇-Day74 多继承入门
单继承是一把兵器继承一套图纸;多继承,就是一把兵器,同时融合多张不同图纸的能力。子类可以同时继承多个父类,一次性获得多个父类的属性与招式。
0
2026-10-20
75. 铸器篇-Day75 私有属性(单下划线、双下划线)入门
兵器有些核心机密,不希望外部随意篡改。今天学习属性的访问权限。Python 没有真正的私有关键字,依靠命名约定来区分保护等级:单下划线为约定保护,双下划线会触发名称改写。
0
2026-10-20
76. 铸器篇-Day76 魔术方法 str 自定义打印对象
直接打印兵器对象,默认只会输出内存地址,看不懂。__str__是内置魔术心法,自定义对象被 print 打印、转为字符串时展示的文本,让输出可读性更强。魔术方法特征:前后双下划线,不用手动调用,满足条件自动触发。
0
2026-10-20
77. 铸器篇-Day77|OOP 实战 Kata:学员类封装
融合铸器篇前面所学:构造方法、实例方法、属性、__str__魔术方法、私有属性思想。封装学员类,把学员的数据和操作行为打包到一个类中,完成面向对象的封装实战。
0
2026-10-20
78. 铸器篇-Day78 综合 Kata:学员管理系统(面向对象版本)
铸器篇全部招式融会贯通!使用 OOP 思想,拆分Student学员类、StudentManager管理类。把学员数据、学员行为、系统管理功能各自封装。对比之前文件版的函数版本,面向对象版本结构更清晰,方便扩展。
0
2026-10-20
79. 御气篇-Day79 同步与异步的区别,什么是 IO 阻塞
修炼御气心法第一步,分清同步、异步,看懂 IO 阻塞。阻塞就是程序原地等待,干等着无事可做,浪费算力;异步就是等待的时候切换去做别的任务。
0
2026-10-20
80. 御气篇-Day80 async /await 基础语法,async 定义协程函数
理解同步异步概念之后,今天学习异步的核心心法关键字 async 和 await。async用来标记协程函数;await用来等待 IO 操作,等待期间让出执行权。
0
2026-10-20
81. 御气篇-Day81 asyncio.run () 运行协程
学会了用 async 写协程函数,但直接调用只会拿到协程对象,不会执行。asyncio.run()就是御气启动法阵,用来启动、运行协程,自动管理异步事件循环(event loop)。
0
2026-10-20
82. 御气篇-Day82 asyncio.create_task 创建异步任务
协程本身只是待执行心法,create_task就是分出一道分身,把协程包装成异步任务,丢进事件循环调度,实现多任务并发的基础。
0
2026-10-20
83. 御气篇- Day83 多任务并发执行
学会创建单个分身任务,今天同时召唤多个分身,多任务并发。多个 Task 一起交给事件循环调度,遇到 IO 等待就自动切换,大幅节省总耗时。
0
2026-10-20
84. 御气篇-Day84 综合 Kata:异步批量模拟数据查询实战
御气篇全套心法融会贯通!综合使用协程、await、create_task、多任务并发。模拟批量查询数据库 / 网络接口,对比同步、异步两种方案的耗时差异,直观感受异步在 IO 场景下的威力。
0
2026-10-20