feat(python基础): 新增元组教学课程

This commit is contained in:
zhiye.sun
2026-07-29 14:59:37 +08:00
parent 30be6923ed
commit 4181826067
4 changed files with 688 additions and 5 deletions

View File

@@ -0,0 +1,120 @@
# 第 1-9 课课堂练习Agent 固定配置快照
#
# 完成要求:
# 1. 根据注释完成元组的创建、读取、统计、转换和解包。
# 2. 使用有意义的英文蛇形变量名。
# 3. 调用 index() 前先判断元素是否存在。
# 4. 不要尝试直接修改元组元素。
# 5. 不要删除题目注释。
# 6. 完成后运行本文件并核对预期结果。
# 练习一:创建元组 agent_config依次保存
# 模型名称 "gpt-5"、温度 0.7、最大长度 2000、启用状态 True。
# 练习二:创建以下两个元组:
# 1. 空元组 empty_config
# 2. 只包含 "Python" 的单元素元组 single_tool。
# 使用 type() 输出 single_tool 的类型,确认它是 tuple。
# 练习三:输出 agent_config 的以下信息:
# 1. 完整元组;
# 2. 元素数量;
# 3. 第一个元素;
# 4. 最后一个元素。
# 读取首尾元素前先判断 agent_config 是否非空。
# 练习四:完成以下切片:
# 1. 取得前两个元素并保存到 basic_config
# 2. 取得后两个元素并保存到 limit_config
# 3. 反转元组并保存到 reversed_config。
# 练习五:完成成员判断和查找:
# 1. 判断 agent_config 是否包含 "gpt-5",保存到 contains_model
# 2. 如果包含,使用 index() 保存位置到 model_index
# 3. 如果不包含,让 model_index 保存 -1。
# 练习六:创建状态元组 status_history
# "成功"、"失败"、"成功"、"成功"、"失败"。
# 使用 count() 统计 "成功",保存到 success_count。
# 练习七:使用 enumerate(agent_config, start=1) 遍历配置。
# 按照“1. gpt-5”这样的格式输出编号和配置值。
# 练习八:解包 agent_config。
# 分别使用 model_name、temperature、max_tokens、is_enabled 接收四个元素。
# 练习九:使用星号解包。
# 把 agent_config 的第一个元素保存到 first_setting
# 把其余元素收集到 other_settings
# 输出 other_settings 及其数据类型。
# 练习十:通过元组拼接创建新配置 new_config。
# 新配置的第一个元素应为 "o3",其余元素沿用 agent_config 的后三个元素。
# 不允许直接修改 agent_config。
# 练习十一:将 agent_config 转换成列表 config_list。
# 把列表中的温度修改为 0.3,再转换回元组 converted_config。
# 分别输出 agent_config 和 converted_config确认原配置没有改变。
# 练习十二:交换两个变量:
# primary_model 初始为 "gpt-5"
# backup_model 初始为 "o3"
# 不使用第三个临时变量,完成交换并输出结果。
# 练习十三:创建元组 agent_capabilities
# 第一个元素为 "gpt-5"
# 第二个元素为列表 ["搜索", "计算"]。
# 向内部列表追加 "写作",再输出整个元组。
# 思考:为什么元组不可变,但这个操作仍然允许?
# 练习十四:使用 30 个等号输出分隔线,再输出最终配置报告:
# 1. agent_config
# 2. basic_config
# 3. limit_config
# 4. reversed_config
# 5. contains_model
# 6. model_index
# 7. success_count
# 8. 解包后的四个变量;
# 9. new_config
# 10. converted_config
# 11. 交换后的 primary_model 和 backup_model
# 12. agent_capabilities。
# 预期核心结果:
# single_tool 的类型为 tuple
# contains_model = True
# model_index = 0
# success_count = 3
# other_settings 是列表;
# new_config 的模型为 o3
# converted_config 的温度为 0.3
# 原 agent_config 保持不变;
# 交换后 primary_model 为 o3backup_model 为 gpt-5
# agent_capabilities 内部列表包含“写作”。
# 完成后进行自查:
# 1. 单元素元组是否保留了逗号;
# 2. 读取首尾元素前是否判断元组非空;
# 3. index() 前是否使用 in 判断;
# 4. 解包变量数量是否与元素数量一致;
# 5. 星号变量是否得到列表;
# 6. 是否没有直接修改 agent_config
# 7. 转换后的配置是否没有影响原配置;
# 8. 变量交换是否没有使用第三个临时变量。