Python程序设计-教案-单元二 语法基础_第1页
Python程序设计-教案-单元二 语法基础_第2页
Python程序设计-教案-单元二 语法基础_第3页
Python程序设计-教案-单元二 语法基础_第4页
Python程序设计-教案-单元二 语法基础_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《Python程序设计》教案

单元二语法基础

教学内容实现学生信息的录入与打印

素质目标:

增强规范意识,养成按规矩行事的习惯。

培养学生解决实际问题的能力.

知识目标:

教学目标了解Python的基础语法规则。

了解Python中的变量和变量类型.

能力目标:

能够将现实生活中的信息通过变星在Python程序中显示.

能够正确判断变量所要用的数据类型,实现学生信息的录入与打印。

教学重点:Python变量的命名规则、Python变量的赋值方法

教学重难点

教学难点:Python变量的应用

教学方法案例分析法、问答法、讨论法、讲授法、实训法

教学用具电脑、投影仪、多媒体课件、教材

课前任务一考勤(2min)一^课预热(10min:一问题导入(5min)T专授新知(30min)

教学设计

f4实施(15min)-习(15min)蛤(3min)—>作业布置(2min)

教学过程主要教学内容及步骤设计意图

■【教师】布置课前任务,提醒同学通过学习软件,完成课前

通过课前任务,

任务

使学生了解本次

课前任务请大家了解学生基本信息都包含什么,预习本任务相关内容。

课的重要性,增加

■【学生】完成课前任务学生的学习兴趣

■【教师】清点上课人数,记录好考勤培养学生的组

考勤

织纪律性,掌握学

(2min)

■【学生】班干部交假条生的出勤情况

■【教师】与学生简单互动,宸习回顾上次课的内容等通过老师与学

新课预热生的互动,并让学

■【学生】聆听、互动

(10min)生了解这次课的

■【教师】讲一些涉及Python语言的基础知识知识点大致要求

俗话说"千里之行,始于足下",在进入Python编程世界之初,

我们需要学习Python语言的基础知识。只有掌握了Python语言的

基础知识,才能让我们在Python编程世界中走的更远.

■【学生】聆听、记录、理解

■【教师】提出以下问题:

我们都学过了C语言,请大家思考一下,C语言的变量命名有通过问题导入

问题导入的方法,引导学牛

哪些规则?

(5min)主动思考,激发学

■【学生】思考、举手回答生的学习兴趣

■【教师】通过学生的回答引入要讲的知识

一、变量

■【教师】通过多媒体介绍变量的命名规则和变星的赋值规则

Python中变量的命名需要遵循一定的规律,即变量名只能包括

字母、数字和下划线,且第一个字符必须是字母或下划线,不能是

数字……(详见教材)

1.变量的命名规则

Python中变量的命名需要遵循一定的规则,即变量名只能包括

字母、数字和下划线,且第一个字符必须是字母或下划线,不能是

数字……(详见教材)

■【教师】强调以下问题

(1)Python的变量名区别英文字母大小写

(2)Python的关键字不能作为变量名使用

通过教师的讲

传授新知■【教师】布置题目解和演示,使学生

(30min)了解Python变量

(1)下列选项中,不能作为Python变量名的是().

和数据类型

A.studentB._StudentC.class5D.5class

(2)以下不属于Python关键字的是()。

A.TrueB.FalseC.gotoD.class

■【学生】完成题目

■【教师】随机点名回答

2.变量的赋值

变量赋值时,Python会自动声明变量的数据类型。赋值运算符

"="用于为变量赋值,其左侧是变量名,而右侧是变量指向的值……

(详见教材)

■【教师】演示示例程序

■【学生】观察运行结果并讨论

■【教师】讲解程序

■【教师】强调以下问题

变量使用前必须先赋值,因为变量指向的内存对象只有在赋值

后才会被创建。

■【学生】聆听、记录、理解

二、数后类型

■【教师】提问

在C语言中,变量有哪些数据类型?

■【学生】讨论并推举学生回答问题

■【教师】讲解在Python中都有哪些数据类型,数据类型有

什么作用

变量的数据类型取决于它指向的数据的类型。Python的数据类

型包括数字、布尔类型、字符串、列表、元组、字典和集合……(详

见教材)

1.数字

数字数据类型用于存储数值。Python支持不同的数据类型,包

括ini、floal和complex(详见教材)

2.布尔类型

布尔(bool)类型是一种比较的类型,它只有"True"(真)和

"False"(假)两种值。在Python中,可以直接用“True"和"False"

表示布尔值(注意首字母大写),也可以通过比较和判断得到布尔

值......(详见,教材)

3.字符串

字符串(str)是以单引号或双引号括起来的任意文本,

如,abc,、“xyz,,等.如果单引号本身也是字符串中的一个字符,那就

可以用双引号括起来;反之,如果双引号本身也是字符串中的一个

字符,那就可以用单引号括起来……(详见教材)

■【学生】聆听、记录、理解

■【教师】布置题目

(1)Python语言提供了3种基本的数字数据类型,其中不包括

()。

A.布尔型B.浮点型C.复数型D.整数型

(2)以下关于二进制整数的定义,正确的是()。

A.0BI234B.oB1234C.ObOlOlD.obOIOl

(3)下列关于Python中短数类型的描述错误的是()。

A.复数是由实部和虚部构成的

B.复数可以看作是二元有序实数对

C.虚后修须有后缀j,且必须为“吗

10010赵浩南郑州

10011浅森南三门峡

■【学生】观看效果,思考

■如果每个学生的信息都采用独立的变量存储,在面对大数据量时会

使代码显得冗长,读者后期可尝试通过列表或元组(将在单元四详

细介绍)的方式来存储学生的信息.

■【教师】布置任努

运时下程序并查1运俏果

(1)importkeyword

print(keyword.kwlist)

(2)以下程序运行时输出12V回车〉

通过实操练习

number=int(input(“请输入一个整数:”))

使学生巩固所学

print('二进制:\bin(number))

知识,并以学生为

prinl('八进制:*,oct(numbcr))

实操练习主体,针对学生接

printf十六进制:\hex(number))

(15min)受能力的差异性,

(3)print('I\t'm\tearning\tPython')

让优秀学生带动

■【学生】在PyCharm中输入代码并查看运行结果其他学生掌握知

■【教师】巡堂辅导,及时解决学生遇到的问题;安排每组做

得最快、最好的学生辅导其他学生进行操作,并解答其遇到

的问题

■【学生】对比自己的运行结果,若程序有误,查找并记录原

总结知识点,

■【教师】简要总结本节课的要点巩固学生对

课堂小结

利用所学变量和数据类型知识点处理实际问题。Python变量和

(3min)数据类型相关

■【学生】总结回顾知识点

知识的印象

■【教师】布置课后作业

通过课后作业

作业布置利用本廿课所学知识点结合个人情况,完成具有个人特色的个复习巩固学到的

(2min)人简介程序。知识,提高实际操

作能力

■【学生】完成课后任务

本次课讲授的主要是Python中的变量和数据类型知识点,通过

知识点的学习和实践,让学生先tPython基础有了更深入的了解,进

教学反思一步提高了对Python知识的掌握程度,学生对本次课的学习兴趣也

很高,取得了不错的教学效果。但由于课下练习较少,软件使用不

太熟练,以后要加强实操部分的练习。

教学内容实现表达式的变身

素质目标:

培养学生的创新精神和实践能力。

知识目标:

教学目标了解Pyihon中的标识符,能准确判断标识符的合法性。

了解Pyihon中的关键字,会借助工具直看关键字信息.

能力目标:

能够通过Python运算符进行不同类型的数值运算,实现表达式的变身。

教学重点:Python运算符的使用方法、Python运算符的优先级

教学重难点

教学难点:Python运算符的应用

教学方法案例分析法、问答法、讨论法、i井授法、实训法

教学用具电脑、投影仪、多媒体课件、教材

课前任务一考勤(2min)一^课预热(10min:一问题导入(5min)T专授断(30min)

教学设计

一任务实施(15min)一组黝i习(15rnin)f蜡(3min)一作业布置(2min)

教学过程主要教学内容及步骤设计意图

■【教师】布置课前任务,提醒同学通过学习软件完成课前任

务通过课前任务,

请大家思考可以通过什么方法对表达式进行变形,预习本任务使学生了解本次

课前任务

需要的相关知识点。课的重要性,增加

学生的学习兴趣

■【学生】完成课前任务

■【教师】清点上课人数,记录好考勤培养学生的组

考勤

织纪律性,掌握学

(2min)

■【学生】班干部交假条生的出勤情况

■【教师】与学生简单互动,复习回顾上次课的内容等

■【学生】聆听、互动

■【教师】概括本节课总体学习内容,让学生大体了解本节课

通过老师与学

学习内容

新课预热生的互动,并让学

(10rnin)数据的运算通过运算符来完成,运算符用于连接表达式中各种生了解这门课的

类型的数据、变量等操作数。Python支持多种类型的运算符,包括知识点大致要求

算术运算符、赋值运算符、关系运算符、逻指运算符、成员运算符、

身份运算符和位运算符等.

■【学生】聆听、记录、理解

通过问题导入

问题导入■【教师】提出以下问题:

的方法,引导学生

(5min)

我们都学过了C语言,请大家思考一下,C语言的运算符有几主动思考,激发学

种,分别是什么?生的学习兴趣

■【学生】思考、举手回答

■【教师】通过学生的回答引入要讲的知识

一、算术运算符

■【教师】提问

在C语言中,都有哪些符号属于算术运算符?

■【学生】讨论并推举学生回答问期

■【教师】讲解Python中的算术运算符都有哪些?都有什么

作用?

Python提供了7个基本的算术运算符,其运算方式与数学中基

本类似。具体符号如下:

运算符名称示例说明

+加法运算a+b返回a和b的和

-减法运算a-b返回a和b的差

■乘法运算a*b返回a和b的积

/1除法运算a/b返回a和b的商

返回a除以b的余

%取模运算a%b

通过教师的讲

・•幕(乘方运笠)a**b返回a和b的次幕

传授新知解和演示,使学生

(30min)返回a和b的商的了解Python各种

整数部分(向下取运算符的使用

整).如果其中一

//整除叨b个操作数为负数,

则结果为负数.例

如初4=04/3=1,

-3//4=-1,4//-3=-2

■【学生】聆听、记录、理解

■【教师】布置题目

有赋值语句x=12+4*((8**2)-20)//6,则X的值为()。

A.41B.41.3C.41.0D.42

■【学生】完成题目

■【教师】随机点名回答

二、比较运算符

■【教师】提问

(1)在C语言中,都有哪些符号属于关系运算符?

(2)在C语言中,关系运算符一般在什么场景下用的多?

■【学生】讨论并推举学生回答问题

■【教师】讲解Python中的关系运算符

关系运算符又称比较运算符,用于比较运算符两侧数据的值,

匕限的结果是一个布尔值,即True或Fake。Python提供的关系运

算符如下所示:

运算符名称说明

判断a和b的值是

否相等,如果是则

==等于a==b

结果为Tme,否则

为False

判断a和bMJg

否不相等,如果不

!=不等于a!=b

相等则结果为

True,否则为False

判断a的值是含大

于b的值,如果是

>大于a>b

则结果为True,否

则为False

判断”的值是否小

于b的值,如果是

<小于a<b

则结果为True,否

则为False

判断a的值是否大

于等于h的值,如

>=大于等于a>=b

果是则结果为

True,否则为False

判断a的值是否小

于等于h的值,如

<=小于等于a<=b

果是则结果为

True,否则为False

■【教师】强调以下问题

(1)等于、不等于、大于等于、小于等于运算符(==、!=、>=、

<=)的表示方法与数学中的表示方法不同(=、,、2、£).

(2)关系运算符两侧的值可以是数值、字符串等数据类型,

但应为同一类型。

(3)字符串数据进行匕徽运算时,按照其内容的ASCII码

值遂行比较.在比较两个字符串时,先比较第一个字符,其

中ASCII码值较大的字符所在字符串较大,如果第一个字符

相同,再比较第二个字符……(详见教材)

■【学生】聆听、记录、理解

■【教师】布置题目

表达式4<=5<=2的值是______________

■【学生】完成题目

■【教师】随机点名回答

三、赋值运算符

■【教师】提问

(I)在C语言中,赋值运算符都有哪些作用?

(2)在上次课中,都学过哪些赋值运算符的知识点?

■【学生】讨论并推举学生回答问题

■【教师】结合任务一中介绍的赋值运算符进一步济解复合赋

值运算符的相关知识

符号"="具有赋值的作用,因此,我们也称其为赋值运算符.

赋值运算符比较特殊,它的作用是把等号右边的值赋给左边。Python

中的赋值运算符见表2-14。

运算符描述

=简单的赋值运算符,将右例操作数的值分配绐左操作数

+=加法忸值运徵符,将右搽作数根加到左操作改,并将结果分配给右操

作数

—=收法显值运尊符,从左操作数中减去心操作牧,井将结果分配给左操

作数

♦=乘法赋值运算符,将左操作数乘以右操作数,并将结果分配给左操作

/=除法赋值运管符,将左掾作数除以右操作数,并将结果分配给左操作

//=取整除赋假运算符,并将结果分配给左操作效

林赋值运算符,执行解运算,并将结果分配绐左操作数

*取模赋值运算符,将左掾作数除以右操作数的模数,并将结果分配给

左操作数

■【教师】强调问题

对于+=,=等赋值运算符,可以将其等价看作于如下格式:

a+=b等价于a=a+b

■【教师】演示例2-19程序并讲解分析.

■【学生】聆听、记录、理解

■【教师】布置题目

为了给整型变量x、y、z赋初值10,下面正确的Python赋值语

句是()。

A.xy2=10B.x=10y=IOz=10

c.X=y=z=10D.x=10.y=10,z=10

■【学生】完成题目

■【教师】随机点名回答

四、逻辑运算符

■【教师】提问

常见的逻辑关系有哪些?

■【学生】讨论并推举学生回答问题

■【教师】讲解Python中的逻辑运算符

Python的逻辑运算符包括and(与)、or(或)、not(非)3

种,如下所示。与C/C++、Java等语言不同的是,Python种的逻辑

运算的返回值不一定是布尔值。

运算符名称示例说明

如果a的值为

Kaise,尢须计算b

and与aandb

的值返回a的值;

否则返回b的值

如果a的值为

True,无须计算b

or或aorb

的值返回a的值;

否则返回b的值

如果a的值为

True,返回值为

not非n<xaFalse;如果a的值

为False,返回值

为True

■【教师】演示例2-20程序

■【学生】观察运行结果并讨论

■【教师】讲解程序(主要代码分析)

■【教师】布置任务

请同学们在小组内分析讨论以下三条语句的结果

prin:(la-5orb<3=*,a-5orb<3)

prin:(la<6orb+3a<6orb+3)

prin:(*nota=',nota)

■【学生】观察运行结果、参与小组讨论,每组推举一个同学

分享讨论结果

■【教师】强调以下问题

在Python中,当参与逻辑运算的数值为0时,则将它看作逻辑

"假",而将所有非0的数值都看作逻辑"真"。

■【学生】聆听、记录、理解

■【教师】布置题目

下列关于Python运算符的使用,错误的是()。

A.a!=bB.a=a&&bC.a==bD.a=a//b

■【学生】完成题目

五、成员运算符

■【教师】利用PPT讲解

成员运算符用于判断一个元素是否在某个序列中,如字符串、

列表、元组等。Python提供的成员运算符如下所示。

运算符说明

in如果在指定的序列中找到值返回True,否则返回False

notin如果在指定的序列中没有找到值返回True,否则返回False

■【学生】聆听、记录、理解

■【教师】演示例2-21程序

■【学生】观察运行结果并讨论

■【教师】讲解程序

六、身份运算符

■【教师】利用PPT讲解

关系运算符中的"=="是比较两个变量的值是否相等。身份运

算符用来判断两个变量是否指向同一个内存对象。Python提供的身

份运算符如下所示。

运算符硼

xi>-y,类似如果引用的是同一个对象则追回True,否

is

则返回False

Xisni)ty,类似id(x)!=id(y).如果引用的不是同f对象则返回

isnot

True,否则返回False.

■【学生】聆听、记录、理解

■【教师】演示例2-22程序,主要代码:

■【学生】观察运行结果并讨论

■【教师】讲解程序

■【教师】强调以下问题

Python为了优化速度,使用了小整数对象池,避免为整数频繁

申请和销毁内存空间。Python中的小整数是指在[-5,256]区间的整

数,这些整数对象是提前创建好的,不会被回放。在一个Python程

序中,所有相同的小整数都是同一个对象。当数值不在小整数对象

池内时,会自动创建新的对象。但是,此时会有一个大整数池,即

处于同一个代码块(一个代码就是一个.py文件)的相同的大整数是

同一个对象。

同理,Python中相同的单个字符也是同一个对象,处于同一个

代码块的相同的浮点数,以及具有相同元素的字符串和元组都是同

—%

■【教师】布置任务

请同学们在小组内分析讨论以下语句的结果

inll=520#修改inll的值为520

print(,修改值后的inti手口ini3引用的是同]一对象?intiisint3)

print(,修改值后的inti内存地址:\id(intl))

■【学生】观察运行结果、参与小组讨论,每组推举一个同学

分享讨论结果

七、位运算符

■【教师】提问

(1)在C语言中,都有哪些符号属于位运算符?

(2)在C语言中,位运算符一般用来进行什么运算?

(3)在C语言中,一般在哪里应用的多一些?

■【学生】讨论并推举学生回答问题

■【教师】讲解Python中的位运算符都有哪些?都有什么作

用?

所谓位运算是指进行二进制位的运算。例如,将一个存储单元

中的各二进制位左移或右移一位。Python提供的位运算符包括按位

与、按位或、按位异或、按位取反、左移和右移共6种,如下所示.

运算符名称示例说明

a和b对应的两个

二进制位均为1

&按位与a&b

时,结果才为1.

否则为0

a和b对应的两个

1按位或a|b二进制位有一个

为1时,结果就为

1,否则为0

a和h对应的两个

二进制位不同时,

A按位异或aAb

结果为1,否则为

0

Ma的?海,然

后将补码的每个

-按位取反~a

二进制位取反,最

后再豺卜码

a的二进制位全部

左移b位,移出位

«左移a«b

删掉,移进的位补

a的二进制位全部

右移b位,移出位

»右移a»b

删掉,移进的位补

八、运算符优先级

■【教师】讲解Python中的运算符优先级相关知识点

Python中运算符的优先级如下所示。

优先级,1页序运算符优先级1项序运算符

1338>、<、>=、<=

-、”正号)、•《负

29==、!=

号)

=、+=、-=、•=、

3*、/、%、//10

仁、%=、**=、〃=

+(加法)、•(减

411is、isnot

法)

5〈V、»12in、notin

6&13and、or、not

7八、1

■【学生】聆听、记录、理解

■【教师】布置题目

假设a=3,b=5,c=2,则表达式not(b<c)anda>c的值是

()。

A.TrueB.FalseC.表达式错误D.不确定

■【学生】完成题目

■【教师】随机点名回答

■【教师】强调以下问题

当一个表达式中有多种运算符时,应按照上面表中的运算符

优先级顺序进行计算。如果想要改变它们的计算顺序,可以

使用圆括号……(详见教材)

■【教师】带领学生完成任务二

中【教师】提出任务

在工作或生活中我们难免会同时接到多项任务,这就需要我们

对各项彳王务进行梳理,将各项任务按轻重缓急进行分类,重要的事

情、紧急的事情先完成,这样既能保证条理清晰、有条不紊,又能

保证高效率、高质量。同理,程序中的运算符也有优先级次序,当

一个表达式有多个运算符出现时,应先算高优先级运算符连接的表

达式,再算低优先级运算符连接的表达式。

本任务将带领大家编写Pyihon程序,利用运算符的不同组合实

现表达式的变身。

通过任务实施

■【学生】思考、讨论

环节,让学生将所

任务实施一、进行任务分析:

学知识与实践相

(15min)完成本任务,须定义一个初始表达式"a+b*c/d"和表达式

结合,培养学生的

中变量的值,然后分别利用不同运算符组合来使表达式完成"变身",

实操能力

最后计算并输出表达式的值。

1.定迎量a,b,c,d,初始化表达式a+b*c/d.

2.利用不同运算符组合实现表达式变身。

二、参考代码:

并定义变量

a=20

b=10

c=15

d=5

#初始化表达式

e=a+b*c/d#30*15/5

print("表达式a+b*c/d的值是:",e)

#表达式的变身

e=(a+b)*c/d#(30*15)/5

print("表达式(a+b)*c/d的值是:",e)

三、代码运行结果:

表达式a+b*c/d的值是:50.0

表达式(a+b)*c/d的值是:90.0

表达式<(a+b)*c)/d的值是:90.0

表达式(a+b)*(c/d)的值是:90.0

表达式u+(b*c)/d的值是:50.0

■【学生】观看效果,思考

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论