内容正文:
3.2 Python语言程序设计(第一课时)(教学设计)
年级
高一
授课时间
课题
3.2 Python语言程序设计(第一课时)
教学
目标
1.了解 Python 语言的基本特点和应用领域、IDLE 运行环境与方法。
(学科核心素养:信息意识)
2.掌握 Python 的基本语法,包括变量、数据类型、运算符等。
(学科核心素养:信息意识、计算思维)
3.激发学生对编程的兴趣,培养学生的创新意识和实践精神(学科核心素养:信息意识、数字化学习与创新)
教学
重难点
重点:了解 Python 语言的基本特点和应用领域,掌握 Python 的基本语法。
难点:掌握 Python 的基本语法,包括变量、数据类型、运算符等,解决简单问题。
教学
准备
多媒体网络教室 ppt教学课件 学习资源包、学习任务单
教学过程
教师活动
学生活动
新
课
导
入
问题导入:同学们,我们前面已经了解到要想解决一些复杂问题,需要借助于计算机编程,那么计算机编程语言有哪些?不同类型的计算机编程语言的特点又是什么呢?
生:c++ c语言、 Java 、 Python 、VB 等
师:今天就让我们共同走进计算机编程语言python,来了解这一编程语言的特点和语法结构。
问题引入,激发兴趣
新 知 讲 授
任务一: 初识python 语言
1. 自主借助网络资源,上网查询总结python 语言的特点及应用领域、发展史并填写下表。
Python语言定义及特点
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。Python 是一种解释型语言: 这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。Python 是交互式语言: 这意味着,您可以在一个 Python 提示符 >>> 后直接执行代码。Python 是面向对象语言: 这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
Python应用领域
Python 的应用领域非常广泛,几乎所有大中型互联网企业都在使用 Python 完成各种各样的工作。比如Web应用开发、自动化运维、人工智能领域、网路爬虫、科学计算、游戏开发。
Python发展史
Python 是由 Guido van Rossum 在八十年代末和九十年代初,在荷兰国家数学和计算机科学研究所设计出来的。Python 本身也是由诸多其他语言发展而来的,这包括 ABC、Modula-3、C、C++、Algol-68、SmallTalk、Unix shell 和其他的脚本语言等等。
像 Perl 语言一样,Python 源代码同样遵循 GPL(GNU General Public License)协议。
2. 使用Python语言编程解决问题时,编制好的程序代码对运行环境有什么要求吗?
答:编 写Python程 序 比 较 方 便 的 方 式 是 使 用 集 成 开 发 环 境,(Integrated Development Environment,简称IDE),具体界面如下。
集成开发环境(IDE)是提供程序开发环境的应用程序,一般包括代码编辑器、调试器 和图形用户界面工具。目前,用于编写Python程序的IDE较多,如IDLE、Spyder、Wing、 pyCharm等。其中PyCharm 是由 JetBrains 打造的一款 Python IDE,支持 macOS、 Windows、 Linux 系统。
除此以外,运行Python有2种方式可以运行Python:
1、交互式解释器:
你可以通过命令行窗口进入 Python,并在交互式解释器中开始编写 Python 代码。你可以在 Unix、DOS 或任何其他提供了命令行或者 shell 的系统进行 Python 编码工作。
2、命令行脚本
在你的应用程序中通过引入解释器可以在命令行中执行Python脚本,如下所示:C:>python script.py # Windows/DOS
任务二:探索IDLE使用方法
1.结合教师讲解和课本,自主探索IDLE使用方法。
(1)交互式解释器Python Shell使用方法:打开IDLE,会出现交互式解释器Python Shell,可以通过它在IDLE内部执行Python命令,也可以在Python Shell的提示符“>>>”后输入任意的语句、表达式或者一小段代码进行测试。
测试1:在Python Shell中输入:print(4 +13),按回车键后,就可以得到 4和13相加的结果:17。
>>> print(4+13)
测试2:在Python Shell中输入:print("Hello"+" Python!"),按回车键后,将显示“Hello Python!”。
>>> print("Hello"+" Python!")
Hello Python!
(2)IDLE自带编辑器使用方法:通过Python Shell菜单:“File”—“New File”,打开编辑器,输入相应的Python程序。通过编辑器菜单:“Run”—“Run Module”,运行程序。
求两个整数和的程序如下:
a=int(input("请输入整数a :"))
b=int(input("请输入整数b :"))
c=a+b
print(c)
Python Shell的交互界面中输入相应数据,可得到如下结果:
>>>
请输入整数a :4
请输入整数b :13
17
任务三:常见的Python基本数据类型
1.教师讲解:数据按照其本身特征可以分为若干种不同的类型,常见的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等逻辑运算
2.师:通过程序的执行对数据进行加工处理,基本运算是数据处理中最常用的手段。
Python的基本运算包括算术运算、关系运算和逻辑运算三大类。变量、常量、运算符和圆括号等,按一定的规则组合构成一个表达式,可以用来描述数据的计算过程或各种条件的判断等。
Python中的算术运算存在着优先级顺序,优先程度最高级别为1,级别数字越大,优 先级越低;在同一个表达式中,如果有一个及以上的运算符,那么先执行优先级高的运算,同优先级的基本运算按照自左向右的顺序执行,但幂运算按照自右向左的顺序执行。
3.生:自主编写下面程序代码体会算术运算符的优先级。
(1)利用Python计算123-123//100*100的结果。
(2)利用Python计算(123-123)//100*100的结果。
总结:在运算过程中先乘除在加减,有括号的先算括号里面的,故而遵循刚才所讲规则。
4.师:关系运算的结果是一个布尔值,若两个数据之间指定的关系成立,则计算的结果值为真(True),否则为假(False)。
其中,“in”成员资格运算符用来检查一个值是否包含在指定的序列中。
生:自主编写下面程序代码体会关系运算符。
(1) print(5>2)
(2) print(“w“in “rw”)
(3) print( 3+2 >2+1) 和print(1+1>2+1)
总结:关系运算的结果只有真(True),假(False);算术运算符优先于关系运算符。
5. 师:逻辑运算符经常用于描述复杂情况的判断。在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)
总结:算术运算符>关系运算符>逻辑运算符优先级
任务四:了解变量和赋值语句
师:程序设计时,有些数据是未知或可变的,为了更灵活地使用这些数据,可以使用变量 来存储。为了能对变量进行访问,需要对变量进行命名。
1.变量命名规则:变量名可以包括字 母、数字和下划线,但不能以数字开头,而且字母区分大小写。保留关键字不能使用。
在Python中,变量的值和类型都可以改变;变量名区分大小写;由于Python是动态类型语言,因此在使用前不需要预先声明变量的数据类型
2.赋值语句:Python中的赋值语句用于将一个值或表达式的结果存储到一个变量中。赋值语句的基本格式是:变量名称 = 表达式
其中,变量名称是符合Python命名规则的标识符,表达式可以是数值、字符串、列表、元组、字典等数据类型,也可以是函数调用、算术运算等产生的结果。
生:自主体验变量命名规则。
(1)
>>> degrees_cel=26.0
>>> degrees_cel
26.0
>>> degrees_cel="26.0"
>>> degrees_cel
'26.0'
总结:在Python中,变量的值和类型都可以改变。
(2)
>>> number=0
>>> number=number+1
>>> print(number)
1
总结:+=”为运算符“+”和赋值符号“=”的组合。类似的赋值运算符还有“–=”“*=”“/=”和“%=”等。
任务五:了解Python基本数据结构
师:程序设计时,需要根据数据之间的逻辑关系和处理任务的要求,将各种数据组合成具 有一定结构的复合体。
Python有五个标准的数据类型:
Numbers(数字)
String(字符串)
List(列表)
rm(元组)
Dictionary(字典)
(1)Numbers(数字)
Python支持四种不同的数字类型:
int(有符号整型)
long(长整型,也可以代表八进制和十六进制)
float(浮点型)
complex(复数)
(2)String(字符串)
字符串或串(String)是由数字、字母、下划线组成的一串字符。
例:S=”apple”
python的字串列表有2种取值顺序:
从左到右索引默认0开始的,最大范围是字符串长度少1
从右到左索引默认-1开始的,最大范围是字符串开头
如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。
[头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。
>>> s = 'abcdef'
>>> s[1:5]
'bcde'
加号(+)是字符串连接运算符,星号(*)是重复操作。
str = 'Hello World!'
print str # 输出完整字符串
print str[0] # 输出字符串中的第一个字符
print str[2:5] # 输出字符串中第三个至第六个之间的字符串
print str[2:] # 输出从第三个字符开始的字符串
print str * 2 # 输出字符串两次
print str + "TEST" # 输出连接的字符串
以上实例输出结果:
Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST
(3)List(列表)
List(列表) 是 Python 中使用最频繁的数据类型。列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套)。列表用 [ ] 标识,是 python 最通用的复合数据类型。
若要访问的不是单个元素,而是一定范围内的多个元素,可以通过冒号“:”间隔的
两个索引参数(开始元素序号、结束元素序号的后一个序号)来实现。
列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始,从右到左索引默认 -1 开始,下标可以为空表示取到头或尾。
字符串或列表中的元素可以通过索引进行访问
>>> info=["BH60018","苹果",50]
>>> info[2]
50
>>> s="Hello"
>>> s[1]
'e
若要访问的不是单个元素,而是一定范围内的多个元素,可以通过冒号“:”间隔的两个索引参数(开始元素序号、结束元素序号的后一个序号)来实现。
>>> info[0:2]
['BH60018', '苹果']
>>> s[1:4]
'ell'
加号 + 是列表连接运算符,星号 * 是重复操作。如下实例:
list = [ 'apple', 786 , 2.23, 'john', 70.2 ]
tlist = [123, 'john']
print list # 输出完整列表
print list[0] # 输出列表的第一个元素
print list[1:3] # 输出第二个至第三个元素
print list[2:] # 输出从第三个开始至列表末尾的所有元素
print tlist * 2 # 输出列表两次
print list + tlist # 打印组合的列表
以上实例输出结果:
['apple', 786, 2.23, 'john', 70.2]
apple
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['apple', 786, 2.23, 'john', 70.2, 123, 'john']
Python 列表截取可以接收第三个参数,参数作用是截取的步长。
(4)rm(元组)
元组是另一个数据类型,类似于 List(列表)。元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
rm = ( 'apple', 786 , 2.23, 'john', 70.2 )
tinyrm = (123, 'john')
print rm # 输出完整元组
print rm[0] # 输出元组的第一个元素
print rm[1:3] # 输出第二个至第四个(不包含)的元素
print rm[2:] # 输出从第三个开始至列表末尾的所有元素
print tinyrm * 2 # 输出元组两次
print rm + tinyrm # 打印组合的元组
以上实例输出结果:
('apple', 786, 2.23, 'john', 70.2)
apple
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('apple', 786, 2.23, 'john', 70.2, 123, 'john')
元组不允许更新,而列表是允许更新的
rm = ( 'apple', 786 , 2.23, 'john', 70.2 )
list = [ 'apple', 786 , 2.23, 'john', 70.2 ]
rm[2] = 1000 # 元组中是非法应用
list[2] = 1000 # 列表中是合法应用
元组是不允许更新的,所以以上代码执行错误,结果如下:
Traceback (most recent call last):
File "test.py", line 6, in <module>
rm[2] = 1000 # 元组中是非法应用
TypeError: 'rm' object does not support item assignment
(5)Dictionary(字典)
字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。字典用"{ }"标识。字典由索引(key)和它对应的值value组成。
键–值对用冒号分隔,各个对之间用逗号分隔,所有这些都包括在花括号“{}”中。 字典中的元素是没有顺序的,引用元素时以键为索引。
>>> dic={"铅笔":71,"钢笔":59,"橡皮":98,"尺子":92}
>>> print(dic["铅笔"])
71
初识python ,激发学习兴趣
自主探究,了解Python运行环境
教师讲解,学生自主练习,讲练结合,促进知识内化。
课
堂
练
习
1.以下哪个不是 Python 的内置数据类型?
A. list
B. map
C. tuple
D. set
正确答案:B
答案解析:本题考查python 数据类型,Python 的内置数据类型有数字类型(int、float、complex 等)、字符串类型、列表(list)、元组(tuple)、集合(set)、字典(dict)等。map 不是 Python 的内置数据类型,在 Java 等语言中有类似的概念。故本题选择B选项。
2.以下哪个是 Python 中合法的变量名?( )
A. 1_var
B. var-1
C. _var
D. @var
正确答案:C
答案解析:本题考查PYTHON变量标识符命名规则,变量名不能以数字开头(A 选项错误),不能包含 “-”(B 选项错误),不能以特殊字符 “@” 开头(D 选项错误),变量名可以以字母或下划线开头。故正确答案为C.
课
堂
小
结
1. 学生思考并总结分享本节课收获,各同学之间互相补充。
2. 教师出示本节课思维导图,回顾本节课所学python语言基础知识,鼓励学生在今后的学习和生活中,积极运用python编程语言解决实际问题。
本节课思维导图如下:
作
业
设
计
1.完成分层作业。
2.学有余力的同学,尝试利用流程图来描述利用计算机编程解决计算某网站中文出现次数的过程。
反
思
评
价
通过本节课的教学,通过丰富的练习题和实际项目案例帮助学生巩固所学知识,提高了他们的实际编程能力,注重培养学生的问题解决能力和逻辑思维。在讲解过程中,引导学生分析问题、设计算法,并通过 Python 代码实现解决方案,有助于他们养成良好的编程习惯。但部分内容的讲解可能过于理论化,缺乏足够的实际应用场景展示
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$$