「Python教案」 变量的定义与使用

108 阅读6分钟

课程目标

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 实现库存预警功能,当低于阈值时报警