M2 语言核心

MODULE 2 · L6–L11 语言核心
6 课时

模块设计原则

AI 时代的语法课不是「人肉文档」:每课建立思维模型,不逐个方法展开;方法查询交给 AI 和文档; 核心代码手写、细节代码 AI 辅助。贯穿示例全部来自大模型 API 场景——学习语法的同时就在接触 AI 开发。 课堂主线一览:JSON 取值学类型(L6)→ API 数据学结构(L7)→ 条件筛选学控制流(L8)→ 封装复用学函数(L9)→ 存档排错学 IO 异常(L10)→ AI 对话管理器学类(L11)。

L6数据类型与变量作业①发布
整数(无限精度、进制)、浮点数、字符串(不可变性、索引切片、f-string)、布尔与 None;type() 与类型转换;「一切皆对象」。
V009 · 数字与字符串核心操作V010 · 类型转换与f-string
L7数据结构:列表、字典、元组、集合
四种结构一句话定位;核心操作(增删改查、遍历);选型思维;推导式入门。主线:API 返回的 JSON 列表 → 遍历提取 → 字典统计 → 排序输出。
V011 · 四种数据结构选型指南V012 · 列表字典核心操作速查
L8控制流:分支与循环
if/elif/else、条件组合、while/for、range、break/continue;推导式高效写法;循环常见 bug(死循环、off-by-one)。
V013 · if分支与条件逻辑V014 · for-while循环与推导式
L9函数设计
def、参数与返回值、默认值、*args/**kwargs(读 AI 代码必备)、lambda。核心思维——函数契约:名字/参数/返回值/示例,好的函数契约 = 好的 prompt。
V015 · 函数定义与参数设计V016 · args-kwargs与lambda
L10文件 IO、异常处理与模块
open 模式、with 语句、JSON 文件读写;try/except/finally、读懂报错;import 机制。主线:API 数据存 JSON → 读回 → 处理超时与限流异常。
V017 · 文件读写与with语句V018 · try-except实战V019 · import机制
L11类与面向对象
class、__init__、self、继承(点到为止)。主线:封装一个「AI 对话管理器」——对话历史属性、发消息方法、清空方法,由此体会类在组织数据与行为上的价值。
V020 · 类与init和selfV021 · 面向对象思维

核心心智模型:四种数据结构怎么选

来自 V011 的四句话——看到数据先问「要什么」,再选结构:

排队的人list · 有序可变

按位置存取、会增会删的序列。聊天记录、消息列表、待办清单。msgs.append(m)

通讯录dict · 键值映射

用名字找内容,查找近 O(1)。API 返回的 JSON 本体、配置、计数器。cfg["model"]

塑封文件tuple · 不可变

定下来就不变的组合:坐标、函数多返回值、可哈希的字典键。x, y = pos

筛子set · 唯一无序

自动去重、快速判存在。URL 去重、停用词表。seen.add(url)

亲手验证——这是 L7 课堂主线的简化版(浏览器内直接运行):

函数契约:好的契约 = 好的 Prompt

L9 的核心思维。写函数前先写清楚四件事——这四件事同样是你向 AI 描述需求的四件事:

名字它做什么

count_words 而不是 func1——名字即文档,AI 也靠名字理解代码。

参数它需要什么

类型 + 含义 + 默认值,如 text: str, topk: int = 3。

返回值它给出什么

返回 dict 还是 list?空输入返回什么?异常时抛还是返 None?

示例怎么用

docstring 里放一个 doctest 示例——既是文档,也是测试。

随堂小测

延伸阅读

共 13 集
经典笔记(适合深入语法细节时查阅):4.5 列表 · 6.4 字典 · 5.3 循环 · 5.4 函数 · 5.6 作业Base64 · 11.3 类

下一模块:M3 数据获取与处理 → ← M1 环境与工具链

📽️ 授课课件:W3–W5 课件 →