资源简介 第三章 算法的程序实现 1、用计算机编程解决的一般过程 2、Python语言程序设计 3、简单的算法及其程序设计 和Python交流吧 2 让Python做几道数学题吧 >>> 3 * 52 156 >>> 3670 - 156 3514 教学目标: 1、熟悉Python数据类型 2、熟悉并会使用算术运算符、关系运算符、逻辑运算符、字符串运算符 Python常用数据类型 {5940675A-B579-460E-94D1-54222C63F5DA}数据类型 类型标识符 类型说明及示例 整型 实型 字符串型 布尔型 列表 int float str bool list 数据序列,如[1, 1, 2, 3, 5, 8, 13, 21] 序列是Python中的内置数据结构,常见的序列有:列表、字典、元组。 所有的序列都有自己的索引,程序可以通过索引来访问对应的值。 整数,可任意大, 如2, -99 数学中的实数,如3.14、 2.318E+6 'Hello, world'、"中国"、 '520' 逻辑判断,True和False 试一试:确定数据类型 {5940675A-B579-460E-94D1-54222C63F5DA}现实事物或现象 列举的数据 数据类型 实型float 字符串型str 列表型list 布尔型bool 体重 52.6 名字 "Sophia" 列出信号灯的三种颜色名称 ['red', 'yellow', 'green'] 按钮是否可用 True, False 整型int 倒计时的数字 10 算术运算符 {5940675A-B579-460E-94D1-54222C63F5DA}运算符 表达式 示例 优先级 ** x ** y 幂运算,5 ** 2 结果25 1 + x + y 5 + 2结果7 2 - x - y 5 - 2结果3 2 * x * y 5 * 2结果10 2 / x / y 除法,4 / 2结果2.0 2 // x // y 整除,5 // 2结果2 2 % x % y 取模,5 % 2结果1(5/2的余数) 2 (1)+ 运算符:除了用于算术加法以外,还可以用于列表、元组、字符串的连接,但不支持不同类型的对象之间相加或连接。布尔型 True =1 False = 0 算术运算符 (2)* 运算符:除了表示算术乘法,还可用于列表、元组、字符串这几个序列类型与整数的乘法,表示序列元素的重复,生成新的序列对象。 算术运算符 (3)运算符/和//: 在Python中分别表示算术除法和算术求整商. (4)%运算符: 可以用于整数或实数的求余数运算。 算术运算符 算术运算符 ** *、/ 、 // 、% + 、- 优先级高 优先级低 资料 实践活动2:时间转换 2020年7月23日12时41分,长征五号运载火箭在中国文昌航天发射场发射升空,火箭飞行2167秒后,成功将执行我国首次火星任务的探测器——“天问一号”送入预定轨道。 请你编写程序,把以秒为单位的火箭飞行时间,转换为用“H : M : S”的格式来表示。 实践活动2:时间转换 分析 问题 设计 算法 编程 调试 分析问题:本问题的已知数据是什么? 火箭飞行2167秒 1小时 = 3600秒 1分钟 = 60秒 实践活动2:时间转换 分析问题:如何存储数据? {5940675A-B579-460E-94D1-54222C63F5DA}变量名 数据类型 含义 t 整型 火箭飞行时间(秒) h 整型 转换为“H : M : S”格式中的小时H m 整型 转换为“H : M : S”格式中的分钟M s 整型 转换为“H : M : S”格式中的秒S 实践活动2:时间转换 分析问题:如何使用数学表达式来建立计算模型? h = t // 3600 m = (t – h * 3600) // 60 m = t % 3600 // 60 s = t % 60 实践活动2:时间转换 设计算法: 输出结果 输入数据 处理数据 实践活动2:时间转换 编程调试 //整除 /除法 实践活动2:时间转换 编程调试 将赋值语句t = 2167改为从键盘输入t,可将任意时间秒数转换为“H : M : S”的格式。 t = int(input()) t = 2167 实践活动2:时间转换 t = int(input()) t = 2167 编程调试 关系运算符 {5940675A-B579-460E-94D1-54222C63F5DA}运算符 表达式 优先级 示例 > a>b 1 5>2结果为True < a1 5<2结果为False >= a>=b 1 5>=2结果为True <= a<=b 1 5<=2结果为False == a==b 2 5==2结果为False != a!=b 2 5!=2结果为True “in”用来检查一个值是否包含在指定的序列中。P71 赋值运算符 {5C22544A-7EE6-4342-B048-85BDC9FD1C3A}赋值运算符 描述 = 直接赋值 += x+=y 相当于 x=x+y -= X-=y 相当于 x=x-y *= x*=y 相当于 x=x*y /= x/=y 相当于 x=x/y %= x%=y 相当于 x=x%y 假设n=4,当n+=1,则 当n-=1,就是 n=n+1 =5 n=n-1 =3 逻辑运算符 {5940675A-B579-460E-94D1-54222C63F5DA}运算符 描述 表达式 示例 not 非 not a not False 结果为True and 与 a and b True and False 结果为False or 或 a or b True or False 结果为True 优先级为是not>and>or 试一试:字符串运算符 字符串操作符"+" : 试一试:字符串运算符 字符串操作符"*" : 试一试:写出Python语言表达式 {5940675A-B579-460E-94D1-54222C63F5DA}问题描述 Python语言表达式 将两个字符串"加油!"和"中国"连成一个字符串 当发射物体的发射速度7.9km/s≤v<11.2km/s时,被发射物体将环绕地球运动,成为地球卫星 2 * a / (b + c) v >= 7.9 and v < 11.2 或7.9 <= v < 11.2 "加油!"+"中国" 运算符的优先级 括号的运算级别最高 在Python中,单个常量或变量可以看作最简单的表达式,使用除赋值运算符之外的其他任意运算符和函数调用连接的式子也属于表达式 运算符优先级规则:算术运算符优先级最高,其次是成员测试运算符、关系运算符、逻辑运算符等,算术运算符遵循“先乘除,后加减”的基本运算原则。 1.有一个四位整数x,要得到该整数的百位,代码应如何写? 课堂练习 x//100%10 a=x//1000(千位) b=x//100%10(百位) c=x//10%10;(十位) d=x%10;(个位) 2.设A=2、B=3、C=4、D=5,写出下列布尔表达式的值。 (1)A > B and C <= D or 2 * A > C ___________ (2)3 > 2 * B or A == C and B != C or C > D ___________ (3)not A <= C or 4 * C == B ** 2 and B != A + C ___________ 课堂练习 False False False 3.设a=8、b=6、c=5、d=3,表达式 a == c and b != c or c > d的值是( ) A.1 B.True C.False D.2 课堂练习 B 4.判断x是否在区间[a,b]上,哪个逻辑表达式是正确的?( ) A. x >= a and x <= b B. x≥a and x≤b C. a≤x≤b D. a <= x or x <= b 课堂练习 A Thanks 展开更多...... 收起↑ 资源预览