
很多初学者第一次看到=时,会自然地把它理解成数学里的“等于”。但在Python的世界里,这个符号有一个更重要的身份——赋值。
今天,我们就通过一个“每日饮水记录器”的案例,彻底搞懂赋值语句的奥秘。
赋值语句是什么?
先看一行最简单的代码:
water = 8 |
这行代码的意思是:把数字8赋值给变量water。
关键区别:
数学中的=表示“相等”(左边等于右边)
Python中的=表示“把右边的值放入左边的变量中”
变量就像水杯上的标签,赋值就是把水量写在标签上。
生活案例:每日饮水记录器
每天喝够8杯水对身体好。我们用一个简单的程序来记录饮水量。
# 每日饮水记录器 # 设置目标 target = 8 # 赋值:目标饮水量8杯 # 记录已喝水量 morning = 2 # 赋值:上午喝了2杯 afternoon = 3 # 赋值:下午喝了3杯 evening = 1 # 赋值:晚上喝了1杯 # 计算总量 total = morning + afternoon + evening #表达式赋值:先计算总量,再存入total # 计算还需多少杯 need = target - total #表达式赋值,计算还差几杯,存入need # 输出结果 print("=" * 25) print("今日饮水记录") print("=" * 25) print(f"上午:{morning}杯") print(f"下午:{afternoon}杯") print(f"晚上:{evening}杯") print(f"总计:{total}杯") print(f"还需:{need}杯") print("=" * 25) # 判断是否达标,给出建议 if need <= 0: print("🎉 达标!喝得够多!") #输出记录,{变量}用于嵌入变量值 else: print(f"💧 再喝{need}杯就达标啦!") |
运行结果

赋值语句的三种常见形式
1. 直接赋值
作用:给变量一个具体的值
场景:设定初始值、存储固定数据
name = "张三" # 字符串 age = 18 # 整数 height = 1.75 # 浮点数 is_ok = True # 布尔值 |
2. 表达式赋值
作用:把计算结果存进变量
场景:算术运算、字符串拼接、条件判断
total = a + b # 算术 greeting = "你好," + name # 拼接 is_adult = age >= 18 # 比较 |
3. 多重赋值
作用:一次给多个变量赋值
场景:交换变量、函数返回多个值
a, b = 1, 2 # 同时赋值 name, age = "张三", 18 |
直接赋值是“给值”,表达式赋值是“算完给”,多重赋值是“一次给多个”。
升级版:交互式饮水记录
完整代码:
# 交互式饮水记录器 print("=" * 25) #字符串乘法,把=重复25次,生成25个等号,输出一条装饰线,让界面更好看 print(" 饮水记录器") #前面的空格是缩进,让标题居中一点 print("=" * 25) target = int(input("目标杯数(建议8杯):")) #int函数将字符串转换成整数,并把转换后的整数赋值给变量 morning = int(input("上午喝了几杯?")) afternoon = int(input("下午喝了几杯?")) evening = int(input("晚上喝了几杯?")) total = morning + afternoon + evening #把三个数字相加,结果赋值给total need = target - total #结果赋值给 print("\n" + "=" * 25) #\n换行符,先空一行;+字符串拼接,把换行符和分隔线连在一起;输出结果前先空一行,让输出更清晰 print(f"总计:{total}杯") #f"..."格式化字符串,并把变量total的值嵌入字符串中 print(f"还需:{need}杯") print("=" * 25) if need <= 0: print("🎉 达标!喝得够多!") else: print(f"💧 再喝{need}杯就达标啦!") |
赋值语句是Python编程的基石。记住三个核心点:
=是赋值,不是数学等号
先定义后使用,变量必须先赋值再使用
见名知意,变量名要能表达含义
动手试试吧
1. 基础题:定义变量存储你今天的饮水量(早、中、晚),计算总量并输出。
2. 进阶题:编写程序,输入语文、数学、英语三科成绩,用赋值语句计算总分和平均分。
3. 挑战题:编写“热量计算器”,输入三种食物的热量值,计算总热量。如果超过2000卡,输出“超标了”;否则输出“热量正常”。
【上周答案公布】成绩评定案例
#基础题:修改程序,增加“优秀”的细分:90-94为“优秀”,95-100为“卓越” score=int(input("请输入你的成绩:")) if score >=95: print("卓越!") elif score>=90: print("优秀!") elif score >=80: print("良好!") elif score >=70: print("中等!") elif score >=60: print("及格!") else: print("不及格,下次加油!") |
#进阶题:增加一个条件,如果成绩是整数但不是百分制(比如101),提示“成绩无效” score=int(input("请输入你的成绩:")) if score >100: print("成绩无效!") elif score >=95: print("卓越!") elif score>=90: print("优秀!") elif score >=80: print("良好!") elif score >=70: print("中等!") elif score >=60: print("及格!") else: print("不及格,下次加油!") |
#挑战题:增加一个功能,输入负数时,提示“成绩不能为负数”,并让用户重新输入(需要用到循环) while True: score = int(input("请输入你的成绩:")) if score < 0: print("❌ 成绩不能为负数!请重新输入。") continue # 跳过本次循环剩余代码,重新输入 elif score > 100: print("❌ 成绩不能超过100分!请重新输入。") continue # 跳过本次循环剩余代码,重新输入 else: break # 输入有效,退出循环 if score >= 95: print("卓越!") elif score >= 90: print("优秀!") elif score >= 80: print("良好!") elif score >= 70: print("中等!") elif score >= 60: print("及格!") else: print("不及格,下次加油!") |
精彩回顾:
一起学Python(006):分支控制结构让程序学会“做选择”@成绩评定案例
一起学Python(004):Python程序三种控制结构:顺序、分支和循环
一起学Python(003):Python代码书写规则:那些让程序崩溃的“小细节”
一起学Python(002):计算机的“数字秘密”——0和1如何统治世界?
一起学Python(001):为什么文科生也要学Python?
欢迎【点赞】+【转发】❤️
