第3篇:数据的运算——让数据动起来 python中文编程
第3篇:数据的运算——让数据动起来
开篇引入
作者:中文编程倡导者—— 李金雨
联系方式:wbtm2718@qq.com
系列:python中文编程入门教程
** 核心理念: AI时代必须使用中文编程,母语编程阅读效率极高"
本课目标
- 掌握Python的算术运算符
- 掌握Python的比较运算符
- 掌握Python的赋值运算符
- 了解字符串的运算
- 理解运算优先级
生活场景引入
同学们,在日常生活中,我们经常需要进行各种运算:
- 购物时计算总价
- 考试后计算平均分
- 比较不同商品的价格
- 计算距离和时间
在Python中,我们可以使用各种运算符来进行这些运算。就像我们使用不同的工具来完成不同的任务一样,Python提供了不同的运算符来完成不同类型的运算。
预期成果展示
在本课结束时,你将能够:
- 使用算术运算符进行基本的数学计算
- 使用比较运算符进行大小比较
- 使用赋值运算符简化代码
- 对字符串进行拼接和重复操作
- 编写一个简易计算器程序
概念讲解
1. 算术运算符
算术运算符用于进行基本的数学运算,包括加减乘除等。
| 运算符 | 描述 | 示例 |
|---|---|---|
| + | 加法 | 3 + 5 = 8 |
| - | 减法 | 10 - 4 = 6 |
| * | 乘法 | 2 * 6 = 12 |
| / | 除法 | 10 / 2 = 5.0 |
| // | 整除 | 10 // 3 = 3 |
| % | 取余 | 10 % 3 = 1 |
| ** | 幂运算 | 2 ** 3 = 8 |
生活例子:
- 加法:购物时计算总价
- 减法:计算找零
- 乘法:计算多个相同商品的总价
- 除法:计算平均分
- 整除:计算可以买多少个商品
- 取余:计算剩余的钱
- 幂运算:计算面积或体积
代码示例:
# 算术运算苹果价格=5香蕉价格=3购买苹果数量=2购买香蕉数量=3# 计算总价总价=苹果价格*购买苹果数量+香蕉价格*购买香蕉数量print("总价:",总价)# 计算平均价格平均价格=总价/(购买苹果数量+购买香蕉数量)print("平均价格:",平均价格)# 计算可以买多少个苹果(假设总钱数为20)总钱数=20可以购买苹果数量=总钱数//苹果价格 剩余钱数=总钱数%苹果价格print("可以购买苹果数量:",可以购买苹果数量)print("剩余钱数:",剩余钱数)# 幂运算(计算正方形面积)边长=5面积=边长**2print("正方形面积:",面积)2. 比较运算符
比较运算符用于比较两个值的大小,返回布尔值(True或False)。
| 运算符 | 描述 | 示例 |
|---|---|---|
| == | 等于 | 5 == 5 → True |
| != | 不等于 | 5 != 3 → True |
| > | 大于 | 5 > 3 → True |
| < | 小于 | 5 < 3 → False |
| >= | 大于等于 | 5 >= 5 → True |
| <= | 小于等于 | 5 <= 3 → False |
生活例子:
- 比较考试成绩的高低
- 比较商品价格的贵贱
- 比较年龄的大小
- 判断是否及格
代码示例:
# 比较运算小明成绩=85小红成绩=92及格分数=60# 比较成绩print("小明的成绩大于小红的成绩:",小明成绩>小红成绩)print("小明的成绩等于小红的成绩:",小明成绩==小红成绩)print("小明的成绩小于小红的成绩:",小明成绩<小红成绩)# 判断是否及格print("小明是否及格:",小明成绩>=及格分数)print("小红是否及格:",小红成绩>=及格分数)# 比较年龄小明年龄=15小红年龄=16print("小明是否比小红小:",小明年龄<小红年龄)3. 赋值运算符
赋值运算符用于给变量赋值,简化代码。
| 运算符 | 描述 | 示例 |
|---|---|---|
| = | 赋值 | x = 5 |
| += | 加后赋值 | x += 3 → x = x + 3 |
| -= | 减后赋值 | x -= 3 → x = x - 3 |
| *= | 乘后赋值 | x *= 3 → x = x * 3 |
| /= | 除后赋值 | x /= 3 → x = x / 3 |
| //= | 整除后赋值 | x //= 3 → x = x // 3 |
| %= | 取余后赋值 | x %= 3 → x = x % 3 |
| **= | 幂运算后赋值 | x **= 3 → x = x ** 3 |
生活例子:
- 累计购物金额
- 计算倒计时
- 累计得分
代码示例:
# 赋值运算# 初始金额余额=100print("初始余额:",余额)# 购物花费余额-=20# 相当于余额 = 余额 - 20print("购物后余额:",余额)# 存入钱余额+=50# 相当于余额 = 余额 + 50print("存入后余额:",余额)# 计算利息(假设年利率为5%)余额*=1.05# 相当于余额 = 余额 * 1.05print("一年后余额:",余额)# 倒计时倒计时=10while倒计时>0:print("倒计时:",倒计时)倒计时-=1# 相当于倒计时 = 倒计时 - 1print("时间到!")4. 字符串运算
字符串也可以进行一些运算,主要包括拼接和重复。
| 运算符 | 描述 | 示例 |
|---|---|---|
| + | 字符串拼接 | “你好” + “世界” = “你好世界” |
| * | 字符串重复 | “你好” * 3 = “你好你好你好” |
生活例子:
- 拼接姓名和称呼
- 生成重复的口号
- 创建分隔线
代码示例:
# 字符串运算# 字符串拼接姓="张"名="三"姓名=姓+名print("姓名:",姓名)# 拼接问候语问候语="你好,"+姓名+"!"print(问候语)# 字符串重复分隔线="-"*30print(分隔线)print("重要通知")print(分隔线)# 生成重复的口号口号="加油!"*5print(口号)5. 运算优先级
当一个表达式中有多个运算符时,Python会按照一定的优先级来执行运算。优先级从高到低如下:
- 括号 ()
- 幂运算 **
- 乘、除、取余 * / % //
- 加、减 + -
- 比较运算符 == != > < >= <=
- 赋值运算符 = += -= *= /= 等
生活例子:
- 数学中的运算顺序:先乘除后加减
- 括号可以改变运算顺序
代码示例:
# 运算优先级# 示例1:先乘除后加减结果1=2+3*4print("2 + 3 * 4 = ",结果1)# 输出:14# 示例2:使用括号改变顺序结果2=(2+3)*4print("(2 + 3) * 4 = ",结果2)# 输出:20# 示例3:混合运算结果3=10+2**3/4print("10 + 2 ** 3 / 4 = ",结果3)# 输出:12.0# 示例4:比较运算和算术运算年龄=15是否成年=年龄>=18print("是否成年:",是否成年)# 输出:False动手实践
基础练习(必做)
- 简易计算器:编写一个程序,输入两个数字,计算它们的和、差、积、商
# 简易计算器数字1=float(input("请输入第一个数字:"))数字2=float(input("请输入第二个数字:"))print("和:",数字1+数字2)print("差:",数字1-数字2)print("积:",数字1*数字2)if数字2!=0:print("商:",数字1/数字2)else:print("除数不能为0") - 购物小票生成器:编写一个程序,输入商品价格和数量,计算总价
# 购物小票生成器商品名称=input("请输入商品名称:")单价=float(input("请输入单价:"))数量=int(input("请输入数量:"))总价=单价*数量print("\n===== 购物小票 =====")print("商品名称:",商品名称)print("单价:",单价)print("数量:",数量)print("总价:",总价)print("===================")
进阶练习(选做)
- 成绩统计分析:编写一个程序,输入多个成绩,计算总分、平均分、最高分
# 成绩统计分析成绩列表=[]人数=int(input("请输入学生人数:"))foriinrange(人数):成绩=float(input(f"请输入第{i+1}个学生的成绩:"))成绩列表.append(成绩)总分=sum(成绩列表)平均分=总分/人数 最高分=max(成绩列表)最低分=min(成绩列表)print("\n成绩统计:")print("总分:",总分)print("平均分:",平均分)print("最高分:",最高分)print("最低分:",最低分) - 温度转换器:编写一个程序,支持摄氏度和华氏度之间的相互转换
# 温度转换器温度=float(input("请输入温度值:"))单位=input("请输入单位(C/F):")if单位.upper()=="C":# 摄氏度转华氏度华氏度=温度*9/5+32print(f"{温度}摄氏度 ={华氏度}华氏度")elif单位.upper()=="F":# 华氏度转摄氏度摄氏度=(温度-32)*5/9print(f"{温度}华氏度 ={摄氏度}摄氏度")else:print("输入的单位有误")
挑战练习(拓展)
- BMI计算器:编写一个程序,输入身高和体重,计算BMI指数,并根据BMI值给出健康建议
# BMI计算器身高=float(input("请输入你的身高(米):"))体重=float(input("请输入你的体重(公斤):"))BMI=体重/(身高**2)print(f"你的BMI指数是:{BMI:.2f}")ifBMI<18.5:print("体重过轻,建议增加营养")elif18.5<=BMI<24:print("体重正常,继续保持")elif24<=BMI<28:print("超重,建议适当运动")else:print("肥胖,建议控制饮食并加强运动")
知识总结
核心概念回顾
- 算术运算符:用于进行基本的数学运算
- 比较运算符:用于比较两个值的大小
- 赋值运算符:用于给变量赋值,简化代码
- 字符串运算:用于字符串的拼接和重复
- 运算优先级:决定表达式中运算的执行顺序
关键代码速查
| 功能 | 代码 | 说明 |
|---|---|---|
| 加法 | a + b | 计算a和b的和 |
| 乘法 | a * b | 计算a和b的积 |
| 除法 | a / b | 计算a除以b的商 |
| 整除 | a // b | 计算a除以b的整数部分 |
| 取余 | a % b | 计算a除以b的余数 |
| 幂运算 | a ** b | 计算a的b次方 |
| 等于 | a == b | 判断a是否等于b |
| 大于 | a > b | 判断a是否大于b |
| 字符串拼接 | s1 + s2 | 将s1和s2拼接成一个字符串 |
| 字符串重复 | s * n | 将s重复n次 |
常见错误提醒
- 除数为零:除法运算时,除数不能为零
- 类型不匹配:不同类型的数据不能直接运算
- 运算优先级:注意运算的执行顺序,必要时使用括号
- 字符串拼接:只能拼接字符串,不能直接拼接字符串和数字
课后作业
巩固练习题
- 编写一个程序,计算圆的面积和周长(半径由用户输入)
- 编写一个程序,输入一个三位数,计算其各位数字之和
创意编程题
- 编写一个程序,模拟银行存款计算,输入本金、年利率和存款年限,计算到期后的本息和
- 编写一个程序,输入两个时间(小时和分钟),计算它们之间的时间差
下篇预习提示
在下一篇中,我们将学习条件语句,了解如何让程序根据条件做出不同的选择。请思考:
- 生活中有哪些需要做选择的场景?
- 如何用程序来实现这些选择?
学习交流
如果你在学习过程中遇到任何问题,欢迎联系我:
- ** 视频号,“时空系”
- 邮箱:wbtm2718@qq.com
- 其他提示:
- 本人正在开发纯中文编程语言和编译器,有兴趣的可以交流
- 本人正在写一本基于中国母语思维习惯的数学教材,可以让你一年内学完从初中到研究生的数学,而且可以让你快速掌握人工智能的关键数学知识,有兴趣的可以交流
祝你学习愉快!
