2025-2026学年第一学期3.2 Python语言程序设计 第1、2课时(教学课件)信息技术浙教版2019必修1

资源下载
  1. 二一教育资源

2025-2026学年第一学期3.2 Python语言程序设计 第1、2课时(教学课件)信息技术浙教版2019必修1

资源简介

(共71张PPT)
教材版本册别:浙教版(2019)必修1
高中信息技术
第3章 算法的程序实现
汇报人:Mr.yang
第3章 算法的程序实现
第2节 (1、2课时)
Python语言程序设计
Python语言基础
顺序结构的程序实现
学习目录
01.
单击此处添加标题内容
02.
单击此处添加标题内容
学习目标
1
2
掌握分析问题、设计算法、编写程序、调试运行等步骤的具体内容和方法;
了解用计算机解决问题的一般过程;
3
能够运用所学知识分析实际问题,并尝试用计算机解决简单问题,提升信息技术学科素养和对科技认同感;

课堂导入
Python语言

课堂导入
Python是一种面向对象、解释型的计算机程序设计高级语言,其语法简洁清晰,方便对数据进行组织和处理;具有丰富和强大的库,可以支持很多日常问题的程序
实现。
因其解释性语言的本质,Python在大多数平台上都是一种理想的脚本语言,特别适合应用程序的快速开发。
Python语言基础
01

Python语言基础
使用Python语言编程解决问题时,需要严格遵守Python语言的语法规则,并选择合理的程序运行环境运行程序。
编程环境
集成开发环境
Integrated Development Environment
简 称
IDE
如何进入IDE界面呢?
点击开始菜单中的“IDLE (Python3.7 64-bit)”,就进入了Python编程语言的“IDLE交互式编程环境”。“IDLE交互式编程环境”启动后的界面,如左图所示。

Python语言基础
解释器操作界面
DLE是开发Python程序的基本IDE。打开IDLE,会出现交互式解释器Python Shell,如右图所示,可以通过它在IDLE内部执行Python命令,也可以在Python Shell的提示符“>>>”后输入任意的语句、表达式或者一小段代码进行测试。

Python语言基础
在Python Shell中直接输入:print(4 +13),按回车键后,就可以得到 4和13相加的结 果:17。
在Python Shell中输入:print("你好Python,我是欢欢!"),按回车键后,将显示“你好Python,我是欢欢!”。

Python语言基础
编辑器操作界面
IDLE还带有一个编辑器,如右图所示,可以用来编辑Python程序。
通过Python Shell菜单:“File”—“New File”,打开编辑器,输入相应的Python程序。

Python语言基础
通过编辑器菜单:“Run”—“Run Module”,运行程序。程序运行时,在解释器Python Shell的交互界面中输入相应数据,可得到如下结果:
>>>
请输入整数a :4
请输入整数b :13
17
在代码编程环境中运行代码
代码执行的结果

Python语言基础
拓展链接
集成开发环境(IDE)是提供程序开发环境的应用程序,一般包括代码编辑器、调试器和图形用户界面工具。目前,用于编写Python程序的IDE较多,如IDLE、Spyder、Wing、PyCharm等。如右图是Spyder的操作界面。
集成开发环境
Spyder的操作界面

Python语言基础
数据类型与表达式
Python常见数据类型
数据类型 数据表示形式
整型 数学中的整数,如:1,–8080,0等 ;十六进制数(用0x前缀),如:0xff00,0xa5b4c3d2 等
实型 数学中的实数,如:3.14,–9.01等 ;用科学记数法表示的实数,如:0.000012可以写成1.2e–5 等
字符串型 用单引号、双引号或三引号表示,如:'这是一个字符串!'、"This is a string!"、'''X'''等
布尔型 只有两种值:True和False。布尔型数据可以进行not、and和or等逻辑运算

Python语言基础
算术运算
关系运算
逻辑运算
基本运算
通过程序的执行对数据进行加工处理,基本运算是数据处理中最常用的手段。
变量、常量、运算符和圆括号等按一定的规则组合构成一个表达式,可以用来描述数据的计算过程或各种条件的判断等。

Python语言基础
算术运算是运用算术运算符进行数的加、减、乘、除等数学运算。
运算符 表达式 描述 示例 优先级
** x**y 求x的y次幂 5**2结果为25 1
* x*y 将x与y相乘 5*2结果为10 2
/ x/y 用x除以y,产生实数值 5/2结果为2.5 2
// x//y 用x除以y,取整数部分 5//2结果为2 2
% x%y 用x除以y,取余数 5%2结果为1 2
+ x+y 将x与y相加 5+2结果为7 3
- x-y 将x减去y 5-2结果为3 3
6//8

Python语言基础
想一想
1%2
结果是1,因为在这种情况下,大的数可以完全包含小的数若干次,没有剩余的部分,所以结果就是小的数本身。
结果是0
11.0//2
11//2.0
11.00//2.00
结果是5.0

Python语言基础
Python中的算术运算存在着优先级顺序,优先程度最高级别为1,级别数字越大,优先级越低;在同一个表达式中,如果有一个及以上的运算符,那么先执行优先级高的运算,同优先级的基本运算按照自左向右的顺序执行,但幂运算按照自右向左的顺序执行。
案例
表达式“123-123//100*100”的运算结果为23。

Python语言基础
关系运算的结果是一个布尔值,若两个数据之间指定的关系成立,则计算的结果值为真(True),否则为假(False)。
3==5就是运用关系运算符“==”(等于)对数字3和5进行比较,其值为False。
案例

Python语言基础
Python关系运算符
运算符 表达式 描述 示例
> x>y x大于y 5>2结果为True
< x>= x>=y x大于等于y 5>=2结果为True
<= x<=y x小于等于y 5<=2结果为False
== x==y x等于y 5==2结果为False
!= x!=y x不等于y 5!=2结果为True
in x in y x 是y的成员 "5"in"2"结果为False

Python语言基础
in
“in”成员资格运算符用来检查一个值是否包含在指定的序列中,以下示例使用了成员资格运算符分别检查“w”和“x”是否出现在字符串“rw”中。
>>> "w" in "rw"
True
>>> "x" in "rw"
False
有没有 not in 呢?

Python语言基础



自主编写下面程序代码体会关系运算符。
print(5>2)
(1)

Python语言基础



print(“w“in “rw”)
(2)

Python语言基础



(3)
print( 3+2 >2+1) 和print(1+1>2+1)
关系运算的结果只有真(True),假(False);算术运算符优先于关系运算符。
总结

Python语言基础
逻辑运算符经常用于描述复杂情况的判断。
运算符 表达式 描述 示例
and x and y 布尔“与” True and False结果为False
or x or y 布尔“或” True or False结果为True
not not x 布尔“非” not False结果为True
Python
逻辑运算符

Python语言基础



自主编写下面程序代码体会逻辑运算符。
(1)print( 3+2 >2+1 and 1+1>2+1)
(2)print( 3+2 >2+1 or 1+1>2+1)
(3)not print( 3+2 >2+1 and 1+1>2+1)
算术运算符>关系运算符>逻辑运算符优先级。
总结

Python语言基础
变量和赋值语句
程序设计时,有些数据是未知或可变的,为了更灵活地使用这些数据,可以使用变量来存储。为了能对变量进行访问,需要对变量进行命名。

Python语言基础
1
2
3
4
5
6
变量名可以包括字母、数字和下划线“_”,但不能以数字开头;
变量名区分大小写;
为了便于理解,变量名应具有一定含义,即“见名知意”;
不能用系统关键字作为变量名;
变量名中不能有“\/&%*$ <}^”等特殊字符与标点;
变量名中不能有空格。
Python语言中,变量命名规则

Python语言基础
import keyword
print(keyword.kwlist)
运行以下代码可以查看Python的保留字段:
运行结果为:
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

Python语言基础
在Python中,如果使用非法标识符,在程序运行时会有相关报错,例如:

Python语言基础
变量的概念
每个变量都拥有独一无二的名字,称为标识符(变量名),通过标识符就能找到变量中的数据。
在编程语言中,将数据放入变量的过程叫做赋值。
Python 使用等号“ = ”作为赋值运算符,具体格式为:标识符 = 数据
如:a=100
a
100
赋值语句“a=100”表示把数字100放到名为a的箱子中,从此以后,a 就代表整数 100,使用 a 也就是使用 100。

Python语言基础
a=100
print(a) #函数print(),作用是在屏幕上输出a的内容
请问,输出结果是什么?
试一试编写下面的程序:


变量是指在程序运行过程中其值可以发生变化的量。在程序设计语言中,变量可以用指定的名字来代表,即变量由变量的“标识符”(又称“名字”)和变量的“内容”(又称“值”)两部分组成。
x=a1
标识符
内容
变量
例如在上面说到的

Python语言基础
变量就相当于一个房间, 房间里可以放任何内容,但是房间又是有大小的, 它不能无限制地塞东西,只能记住存放的最后一次的东西。
>>> number=0
>>> number=1
>>> number=number+1
>>> print(number)
显示:2

Python语言基础
上面的赋值语句“number = number + 1”也可以写成“number += 1”,其功能是先将变量number值加1,然后将计算结果赋值给变量number。其中,“+=”为运算符“+”和赋值符号“=”的组合。
运算符 描述 举例
= 简单的赋值运算符 c=a+b 将a+b的值赋值给c
+= 加法赋值运算符 c+=a 等效于c=c+a
-= 减法赋值运算符 c-=a 等效于c=c-a
*= 乘法赋值运算符 c*=a 等效于c=c*a
/= 除法赋值运算符 c/=a 等效于c=c/a
%= 取模赋值运算符 c%=a 等效于c=c%a
**= 幂赋值运算符 c**=a 等效于c=c**a
//= 取整数赋值运算符 c//=a 等效于c=c//a

Python语言基础
a =1234
赋值
a==1234
等于
变量名
变量值(数据)
赋值号
赋值号“=”不是等号,具有方向性,由右边赋给左边,且赋值号左边只能是变量

Python语言基础
基本数据结构
程序设计时,需要根据数据之间的逻辑关系和处理任务的要求,将各种数据组合成具有一定结构的复合体。
在超市购物清单中,一条商品信息由“编号”(字符串型)、“名称”(字符串型)、“单价”(实型)、“数量”(实型)等数据项组成,在Python中可用列表来组织和存储;而在处理学生基本档案信息时,可以用字典组织数据。
案例

Python语言基础
Python有五个标准的数据类型:Numbers(数字)、String(字符串)、List(列表)、rm(元组)、Dictionary(字典)。
Numbers(数字)
浮点型(float):浮点型由整数部分与小数部分组成,如2.5。
整型(int):通常被称为整型或整数,是不带小数的数,
如a = 10 b = -60 c = 6841。
复数(complex):复数由实数部分和虚数部分构成,可以用a+bj或者complex(a, b)表示,复数的实部a和虚部b都是浮点型,例如:a = 3.0+4.0j b=complex(0,1)。
01
02
03
Python
支持三种不
同的数值
类型

Python语言基础
String
(字符串)
字符串是由一些数据元素共同组成的一个序列整体,用单引号或双引号括起来的文本,如‘abc’、"xyz"等。字符串的索引从0开始,-1 为从末尾开始的位置。
已知str = ‘Hello World!’,写出下列程序的结果。
执行代码 注释 结果
print (str)
print str[0]
print str[1:4]
print str * 2
Hello World!
输出完整字符串
输出字符串中的第一个字符
输出字符串中第二个至第五个之间的字符串,就是第二个、第三个、第四个
输出字符串两次
H
ell
Hello World!Hello World!

Python语言基础
List
(列表)
List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。列表用 [ ] 标识,是 python 最通用的复合数据类型。若要访问的不是单个元素,而是一定范围内的多个元素,可以通过冒号“:”间隔的,两个索引参数(开始元素序号、结束元素序号的后一个序号)来实现。
info
列表索引

Python语言基础
>>> info=["BH60018","苹果",50]
>>> info[2]
50
>>> s="Hello"
>>> s[1]
'e
>>> info[0:2]
['BH60018', '苹果']
>>> s[1:4]
'ell'
列表中的元素可以通过索引进行访问。
若要访问的不是单个元素,而是一定范围内的多个元素,可以通过冒号“:”间隔的两个索引参数(开始元素序号、结束元素序号的后一个序号)来实现。

Python语言基础
已知list = [ 'runoob', 786 , 2.23, 'john', 70.2 ],tinylist = [123, 'john'] 写出下列程序的结果。加号 + 是列表连接运算符,星号 * 是重复操作。
执行代码 注释 结果
print list ['runoob', 786, 2.23, 'john', 70.2] 输出完整列表
print list[0] runoob 输出列表的第一个元素
print list[1:3] [786, 2.23] 输出第二个至第三个元素
print tinylist * 2 ['runoob', 786, 2.23, 'john', 70.2, 123, 'john'] 输出列表两次
print list+tinylist [ 'runoob', 786 , 2.23, 'john', 70.2 ,123,'john'] 打印组合的列表

Python语言基础
rm
(元组)
元组是另一个数据类型,类似于 List(列表)。元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。例如rm = ( 'apple', 786 , 2.23 );tinyrm = (123, 'john')。
执行代码 注释 结果
print rm ('apple', 786, 2.23) 输出完整元组
print rm[0] apple 输出元组的第一个元素
print rm[1:3] (2.23, 'john', 70.2) 输出第二个至第四个(不包含)的元素
print rm[2:] (2.23) 输出从第三个开始至列表末尾的所有元素
print tinyrm * 2 (123, 'john', 123, 'john') 输出元组两次
print rm + tinyrm ('apple', 786, 2.23, 123, 'john') 打印组合的元组

Python语言基础
Dictionary
(字典)
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用{ }标识,它是一个无序的“键(key):值(value)”对集合。键必须使用不可变类型。在同一个字典中,键必须是唯一的。
键 和 值 在 字 典 中 以 成 对 的 形 式 出 现, 并 以 如 下 方 式 标 记:d={key1:value1,key2:value2,…}。

Python语言基础
键–值对用冒号分隔,各个对之间用逗号分隔,所有这些都包括在花括号“{}”中。 字典中的元素是没有顺序的,引用元素时以键为索引。
如要利用字典组织和存储四种文具的名称和数量信息,键(名称)和值(数量)的对应关系如右图所示。
>>> dic={"铅笔":71,"钢笔":59,"橡皮":98,"尺子":92}
>>> print(dic["铅笔"])
71
字典结构示例

Python语言基础
只需知道数据之间相互链接的顺序
探讨与讨论
1.Python的算术运算符不包括( )。
A.* B.// C.% D.\
D
解析:ABC都是Python中常用的算术运算符。D是转义字符,表示行尾的续行符,即一行未完,转到下一行继续写。
2. 表达式7%2的结果是( )。A.1 B.2 C.3 D.3.5
A
解析:%表示取模/取余,即两个数相除后的余数,因此7%2==1。

Python语言基础
只需知道数据之间相互链接的顺序
探讨与讨论
3. 关于Python算术操作符,以下选项中描述错误的是( )。
A.x//y表示x与y之整数商,即不大于x与y之商的最大整数
B.x**y表示x的y次幂,其中,y必须是整数
C.x%y表示x与y之商的余数,也称为模运算
D.x/y表示x与y之商
B
解析:B 错误x**y表示x的y次幂,其中,y可以是整数,也可以是小数。
4.执行3 < 4 or 3 == 4后输出的结果为( )。
A.None B. not is C.False D.True
D
解析:or是逻辑或运算符,当两个判断式满足其中一个时,则返回True。A中None表示空类型,B中not is是身份运算符,不能作为结果输出。
顺序结构的程序实现
02

顺序结构的程序实现
在左侧的程序中,我们是按照1-2-3-4-5的顺序来分析执行出程序结果的,这种按照程序语句的先后顺序执行的结构,我们称之为“顺序结构”。
输出下图程序结果?
a,b = 2,3
a = a+b
b = a+b
c = a+b
print(c)
结果:13






顺序结构的程序实现
顺序结构的流程图
顺序结构是最常用、最简单的程序结构,其语句执行顺序是自上而下,依次执行的。

顺序结构的程序实现
练一练
交换两个变量值的流程图
请同学们结合右边的流程图,尝试用顺序结构来实现将两个整型变量a、b的值互换,并用Python语言来实现。
a=input( )
b=input( )
c=a
a=b
b=c
print(a)
print(b)
代码
代码一

顺序结构的程序实现
刚才的代码我们是否可以改进一下呢?
a=input("请输入整数a的值:")
b=input("请输入整数b的值:")
c=a
a=b
b=c print("a=",a)
print("b=",b)
程序运行结果
代码二

顺序结构的程序实现
刚才的代码我们是否可以再改进一下呢?
a=int(input("请输入整数a的值:"))
b=int(input("请输入整数b的值:"))
c=a #语句1
a=b #语句2
b=c #语句3
print("a=",a)
print("b=",b)
程序运行结果
代码三

顺序结构的程序实现
结合三位同学编写的代码和运行结果,请以小组为单位
讨论针对我们前面给出的流程图,我们最应该选择哪一个代
码?并说出原因。
最应该选择代码3,因为代码3中采用了int()和input()相结合的方式,实现了用户输入的内容必须是数值,否则会报错;并且对比代码1,2,3,加上提示语会使用户在使用时体验感更好。
思考一

顺序结构的程序实现
如果调换代码3中语句1、语句2或语句3的位置,程序的运行结果将会如何变化?
思考二
c=a #语句1
b=c #语句3
a=b #语句2
交换了位置,会使输出的结果一样。

顺序结构的程序实现
#在程序语句中起到了什么作用?
思考三
“#”后面的内容为注释,在程序运行时不执行。注释主要用于对程序代码进行说明,便于程序的理解和维护。

顺序结构的程序实现
上述程序中的int、input、print等都是Python的内
建函数。其中,input函数实现了用户和计算机程序的交互输入,当用户根据提示“请输入整数a的值:”输入合适的数据并按回车键后,input函数会将用户输入的数据以字符串型接收到程序中;int函数将接收到的字符串型数据转换为整型数据;print函数实现计算结果输出。Python中有许多内建函数。

顺序结构的程序实现
函数是 Python 语言程序的基石,是组织好的、可重复使用的、用来实现单一或相关联功能的代码段。
Python常见内建函数

顺序结构的程序实现
两个变量值的直接交换
在Python中,两个变量值的互换可不借助第三个变量而直接进行,如:a,b=b,a。
对换赋值
x=1; y=2
x, y = y, x # x = 2, y = 1
拓展链接

顺序结构的程序实现
多重赋值
同时为多个变量赋值,也称链式赋值。
例如:a = b = c = 1 # a,b,c的值都为1
多元赋值
多个变量,多个值,逐一对应。
例如:a,b,c= 1,2, "runoob" # a=1,b=2,c= "runoob"
增量赋值
x += 1 # x = x + 1

顺序结构的程序实现
试一试
想一想
len(abc)、len([abc])、len([abc,ab,ac])
的返回值一样么?
len(abc)
返回值是:3
len([abc])
返回值是:1
len([abc,ab,ac])
返回值是:3

顺序结构的程序实现
len([ "runoob", 786 , 2.23, "john", 70.2 ])
返回值是:5
min([100,50,60,"20"])
返回值是:会报错,将20的引号去掉后,返回值就是20。
sum([100,50,60,"20"])
返回值是:会报错,将20的引号去掉后,返回值就是230。
数字加了引号就成了字符串,不能与其他数字进行大小的比较和运算。

顺序结构的程序实现
只需知道数据之间相互链接的顺序
探讨与讨论
1.函数input()功能是( )。
A.打印输出文本信息
C.进行数据类型转换
B.获取用户的输入
D.查看数据类型
B
解析:本题考查 Python 输入函数。在Python 中,函数 input()功能是获取用户的输入。

顺序结构的程序实现
只需知道数据之间相互链接的顺序
探讨与讨论
2.下列程序采用的算法结构是( )。
a=3
b=5
s=a+b
print(s)
A.循环结构 B.关系结构
C.顺序结构 D.分支结构
C
解析:本题考查 Python 顺序结构。分析程序可知,该程序的执行顺序是自上而下,因此为顺序结构。

顺序结构的程序实现
只需知道数据之间相互链接的顺序
探讨与讨论
3.在 Python 中,若a=3,b=2,c=1,经过下列程序段执行后,变量b的值是( )
c=a
b=b+c
A.2 B.3 C.4 D.5
D
解析:本题考查 Python 顺序结构的应用。执行程序段后,结果为:c=a=3,b=b+c=2+3=5。
小结
03

小结
课堂小练
04

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
1.小明同学在自动售货机(图1)选择价值2.5元的饮料,然后在收款口放入10元。自动售货机接收到货币后,在商品取出口投放小明所要的饮料,并找零7.5元。
图1
关于用计算机解决问题说法中正确的是①使用计算机现成的软件工具能解决所有的问题②相较人类计算机存储能力更强计算精准度更高③利用计算机自动化程度极高提升信息加工效率④利用计算机的高速运算能力提高信息处理能力( )
A.①②③ B.①②④ C.①③④ D.②③④
D

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
2.人工智能医疗影像诊断系统中,确定如何准确识别病变区域的方法是在( )
A.抽象与建模 B.算法设计 C.代码实现 D.结果验证
B
解析:本题考查计算机编程解决问题相关内容。在人工智能医疗影像诊断系统中,确定如何准确识别病变区域的方法是在算法设计步骤。A选项,抽象与建模主要是对医疗影像诊断问题进行抽象分析,建立系统的整体架构和模型,但不涉及具体识别病变区域的方法确定。C选项,代码实现是将设计好的算法转化为实际的程序代码,是在确定方法之后的步骤。D选项,结果验证是对已经实现的系统进行验证其准确性和可靠性,也不是确定识别病变区域方法的步骤。算法设计步骤是专门针对如何准确识别病变区域进行方法的设计,所以确定如何准确识别病变区域的方法是在算法设计步骤。故本题答案是B选项。

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
3.编程计算依赖于计算机高精确度、高速运算等特点可以解决多种数学问题,以下不属于数值计算的是( )
A.图像处理 B.函数计算
C.方程求解 D.数列求和
答案:A
解析:本题主要考查计算机编程计算。数值计算包括函数计算、 方程求解、 数列求和等,不包括图像处理,故本题选A选项。

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
4.小张在学习了Python程序语言后,想编写一套《班级学生积分管理》程序帮助老师更高效地管理班级。在问题解决过程中最后完成的是( )
A.编写程序 B.设计算法
C.调试程序 D.分析问题
答案:C
解析:本题考查程序设计解决问题相关内容。运用计算机程序解决问题的一般步骤是:分析问题、设计算法、编写程序、调试程序。故本题答案是C选项。
高中信息技术浙教版必修1
谢谢!

展开更多......

收起↑

资源预览