课程目标
1.知识目标
l 能够正确定义和使用变量、并且变量命名能符合命名规则。
l 能够正确合理的使用动态赋值机制。
2.能力目标
l 能够按照命名规范对变量进行命名,并能够实现基础数据操作。
l 能够通过变量解决实际问题,比如工业计数、数据计算。
3.思政目标
l 严谨性: 变量命名规范好比工程图纸标注标准。
l 责任意识: 变量作用域管理好比团队协作规则。
l 技术伦理: 数据隐私保护和变量安全使用。
学习内容
1.变量本质就是内存中存储数据的容器,用于存储和传递信息。
2.命名规则:①标识符由字母(大写或小写)、数字和下划线(_)组成。②数字不能作为标识符的开头。③Python中的关键字不能作为标识符。
3.动态赋值:变量在程序运行过程中可以重新被赋值,也就是说变量值在程序运行过程中会被改变。
4.实践场景:
✔ 工业场景,例如,生产线产品计数器(使用变量来记录合格品的数量)。
✔ 生活场景,例如,电商订单金额计算(使用变量来保存商品的单价、数量,以及总的金额)。
重点分析
| 重点内容**** | 确立理由**** | 突破方法**** |
|---|---|---|
| 变量的命名规范 | 变量的命名会影响代码的可读性、可维护性,以及团队合作的效率 | 将规范命名与随意命名的代码进行对比,分析可读性差异 |
难点分析
| 难点内容**** | 确立理由**** | 化解方法**** |
|---|---|---|
| 动态赋值机制 | 体现程序逻辑灵活性,是复杂功能实现的基础 | 通过print()函数,查看变量值在程序运行过程中的变化过程 |
教学活动设计
概念引入
情景模拟:作为一个工厂质检员,需要对每件合格产品贴标签并记录合格产品的数量。在这里产品的标签类似于变量的名称,记录合格产品的数量类似于变量的值。如果在贴标签时在“合格产品”上贴上“a”标签,会导致什么后果?导致标记的混乱→引出变量命名规范的重要性。
代码演示
变量命名规范示例
qualified_products = 0 # 合格品数量
inspection_status = "进行中" # 检测状态
变量动态赋值演示
current_count = 100
print(f"当前库存: {current_count}件")
current_count = current_count + 50 # 补货
print(f"补货后库存: {current_count}件")
案例解析
计算产品总产量: 当天总产量 = 白班产量 + 夜班产量
# 初始化计数器
day_shift_output = 0 # 白班产量
night_shift_output = 0 # 夜班产量
total_output = day_shift_output + night_shift_output
# 输出结果
print(f"初始总产量: {total_output}件")
# 模拟生产过程
day_shift_output = 1500
night_shift_output = 1200
total_output = day_shift_output + night_shift_output
# 输出结果
print(f"今日总产量: {total_output}件")
运行结果
初始总产量: 0件
今日总产量: 2700件
进程已结束,退出代码为
计算电商订单金额: 已知商品单价是29.9,购买该产品3件,打9折,计算实付订单金额。
unit_price = 29.9 # 单价
quantity = 3 # 数量
discount = 0.9 # 折扣率
total_price = unit_price * quantity * discount
print(f"实付金额: ¥{total_price:.1f}")
运行结果
实付金额: ¥80.7
进程已结束,退出代码为
常见错误
| 错误类型**** | 示例代码**** | 解决方法**** |
|---|---|---|
| 变量未定义 | print(score) | 原因: 变量要先定义后使用修改: 在print()前加上score = 90语句 |
| 违规命名 | 2nd_place = "亚军" | 原因: 变量的命名不能以数字开头。修改: 变量名修改成second_place |
| 作用域错误 | if True: x=5print(x) | 原因: 变量定义在if结构内部,外层不能访问修改: 在外层作用域提前声明变量如x = None |
课堂练习
任务1: 如果学生成绩大于等于90分,成绩等级为A;如果学生成绩大于等于80且小于90时,学生等级为B;其他情况,学生等级为C。编写代码根据学生成绩求出学生成绩等级,并将结果打印输出。
# 参考答案score = 85
if score >= 90:
grade = "A"
elif score >= 80:
grade = "B"else:
grade = "C"print(f"成绩等级: {grade}")
运行结果
成绩等级: B
进程已结束,退出代码为
任务2: 分析、调试错误代码,并修改代码中的错误
# 错误代码
usre_name = "张三"
print("用户名:", user_name) # 变量名拼写错误
运行结果
Traceback (most recent call last):
File "D:\Code\PythonProject\test.py", line 3, in <module>
用户名:", user_name) # 修正拼写错误
^^^^^^^^^
NameError: name 'user_name' is not defined. Did you mean: 'usre_name'?
进程已结束,退出代码为
→在变量定义时,变量取名“usre_name”,但在print()函数中打印变量值时,变量名误写为“user_name”,出现了变量拼写错误,在程序运行时出现错误。
任务2: 修改代码中的错误
# 修改错误后的代码
usre_name = "张三"
print("用户名:", usre_name) # 修正拼写错误
运行结果
用户名: 张三
进程已结束,退出代码为
→在print()函数中打印变量值时,将变量名修改为正确的“usre_name”,确保变量在使用之前已经定义且给定了初始值。
课后作业
作业1: 使用变量来保存人的身高和体重,根据身高和体重,计算个人健康数据(BMI)并将计算结果输出。在定义变量时指定身高为1.72,体重为65。说明:BMI(身体质量指数)是衡量体重与身高关系的常用指标,计算公式为体重(kg)÷身高(m) 的平方。
height = 1.72
weight = 65
bmi = weight / (height ** 2)
print(f"身高: {height}m, 体重: {weight}kg, BMI: {bmi:.1f}")
运行结果
身高: 1.72m, 体重: 65kg, BMI: 22.0
进程已结束,退出代码为
作业2: 编写一个程序模拟银行账户操作,包括开户、存款、取款等操作。使用变量保存账号余额,初始余额为1000(开户操作),然后存入500(存款操作),接着取出200(取款操作),在每次操作后,都使用print()函数将当前的账号余额打印输出,观察变量的变化。
balance = 1000
print(f"当前余额: ¥{balance}")
balance += 500 # 存款
print(f"存款后余额: ¥{balance}")
alance -= 200 # 取款
print(f"取款后余额: ¥{balance}")
运行结果
当前余额: ¥1000
存款后余额: ¥1500
取款后余额: ¥1300
进程已结束,退出代码为
考核设计
1.过程性考核(40%)
l 课堂练习的完成程度(20%)
l 编写代码的规范性与添加注释的规范性(10%)
l 参与小组讨论和解决问题的能力(10%)
2.终结性考核(60%)
项目:开发“智能仓储管理系统”的出库和入库操作
l 使用变量记录货物入库和出库的数量
l 实现库存预警功能,当低于阈值时报警