内容正文:
模块2
课程名称
Python程序设计基础
章名
模块2 语法基础——树立规则,计算并打印期末成绩
教学内容
Python语法基础
课时
6
项目性质
□演示性 □验证性 □设计性 R综合性
授课班级
授课日期
授课地点
教学目标
(1)使用正确的标识符并灵活运用注释提高程序可读性;
(2)能够理解变量的作用并掌握Python中变量的赋值方法;
(3)应用print()和input()函数完成数据的输入与输出;
(4)熟悉常用的数据类型,灵活运用类型转换函数;
(5)利用Python中常用运算符构建表达式进行计算和数据处理。
教学重点
(1)变量的命名规则;
(2)代码注释的使用;
(3)print函数、input函数的应用;
(4)数据类型及类型转换;
(5)常见运算符的使用及优先级。
教学难点
(1)变量的含义;
(2)数据的输入与类型转换;
(3)赋值运算符、逻辑运算符的使用。
教学准备
(1) 教材:《Python程序设计项目教程--从入门到实践》
(2) 学习平台:超星Python教学平台或职教云Python教学平台
(3) 硬件设备:装有Python开发环境的计算机;
(4)教学资源:课件PPT、实训指导书
32
学科网(北京)股份有限公司
教学过程
教学环节
教学内容与过程
(教学内容、教学方法、组织形式、教学手段)
课前组织
(1)在学习平台上发布微课视频让同学们预习;
(2)在学习平台上发布上课使用的PPT;
(3)在学习平台上发布实训指导书;
(4)在学习平台上发布本次课程学习成果检验题目。
课程内容描述
【情景导入】
· 每当期末考试结束后,授课老师都需要完成期末成绩的汇总、分数的统计、成绩的打印等工作。
· 这些繁杂的工作可以用Python程序完成从而提升工作效率和准确率,要想编写Python程序,首先要学习语法规则,进而树立编程的规范意识。
· 本模块将展开Python基础语法的学习,通过简单语句完成期末成绩的键盘输入、简单计算、打印输出等工作。
【项目分解】
· 根据业务需求,按照难度递增原则,项目分解为3个任务
【任务2.1 打印成绩单】
【任务分析】
· 学期末,某班张小帆、欧雷雷、于田田等3位同学参加了2022年度科目1、科目2的期末考试,最终成绩如下表所示:
· 本任务要求在计算机屏幕上按照规定格式打印期末成绩单,需要完成的具体工作内容如下表所示:
【知识储备】
2.1.1 标识符与关键字
· 程序代码中为了区别不同的事物(如变量、函数、类等),引入了标识符的概念,用来代指程序中用到的特定事物。
· Python中,标识符分为两类:用户标识符和系统标识符。
1.用户标识符:
· 用户标识符是程序员根据编程需要,自行定义的标识符。
· 为了保证程序的规范性,Python中用户标识符需遵循以下规则:
· 标识符必须由字母(a—z、A—Z)、数字(0-9)或下划线(_)组成。
· 标识符的第一个字符不能是数字。
· 标识符对大小写敏感。例如apple和Apple是不同的标识符,代指不同事物。
· 不允许使用关键字(即系统标识符)。
· 使用用户标识符要遵循标识符命名规则,同时也要做到标识符见名知意、风格统一,从而增强程序的可读性与可维护性。
· 下面介绍几种“约定俗成”的命名方式:
· 大驼峰命名:每个单词的首字母都是大写,例如Student、ElectricCar;大驼峰命名法一般适用于类的命名。
· 小驼峰命名:第一个单词的首字母小写,其余单词的首字母大写,例如printAddress;小驼峰命名法常见于函数名称、变量名中。
· 蛇形命名:单词之间用下划线“_”连接,例如student_scores等。蛇形命名常用于函数名称、变量名中。
2、系统标识符
· 系统标识符也称关键字、保留字,是指Python中已经被使用、赋予特定含义的标识符,程序员不能重复定义。
· 以下两条语句可以查看Python中的系统标识符:
import keyword
print(keyword.kwlist)
· 在Python IDLE中查看运行结果如图:
2.1.2 变量
· 计算机程序运行过程中需要用到很多数据,这些数据存储在内存的某些单元中。为了方便获取某个内存单元中的数据,会使用标识符来标识这个内存单元,这个标识符称为变量。
· 例如内存的某个单元中存储了数据10,我们可以使用变量num标识这个数据,这样num与数据10建立了关联,后续代码中则可以使用变量名代表其关联的数据。
· Python中使用变量前需要定义变量并赋值,通过赋值运算符“=”将内存中存储的数据与变量名建立联系,其语法格式为:变量名=值。
· 例如定义一个变量num,并为其赋值10,使用Python提供的print()函数打印输出num所代表的数:
· 变量的值可以改变,只需为其重新赋值即可。
· 例如重新为num赋值20,然后使用print函数打印num的值:
2.1.3 注释
· 我们可以在文档里加入批注、标注、脚注等,对相关内容加以说明。同样在程序中,我们也可以加入部分注释,以提高程序的可读性。
· 注释是穿插于计算机程序中的“隐形代码”,是供编程人员阅读的;程序运行时,Python解释器会自动忽略注释部分。
· Python的注释分为单行注释和多行注释。
1.单行注释
· 单行注释以井号“# ”开头,用来说明当前行或后面代码的功能。
· 例如打印一句话时可以用单行注释加以说明:
2.多行注释
· 如果注释的内容较长、超过一行,则可以使用多行注释。
· Python的多行注释是用三对单引号或三对双引号将多行注解内容包裹起来。
· 例如打印古诗词,用多行注释加以说明:
2.1.4 打印输出
· Python程序中,默认的打印输出就是将信息显示在计算机屏幕上。
· print()函数可以用来向屏幕上打印输出相关信息,它可以输出任何类型的数据,我们只需要将输出的内容放置到print后面的括号中即可。
· 例如打印整数、小数和文本信息:
>>> print(10) # 打印输出整数10
10
>>> print(3.14) # 打印输出小数3.14
3.14
>>> print("我们要树立Python编程的规范意识。") # 打印一句话,需用引号将这句话包裹起来
我们要树立Python编程的规范意识。
· print()函数还可以一次性输出多个数据,放入括号中的数据用逗号“,”隔开,示例如下:
>>> print(10, 3.14, "我们要树立Python编程的规范意识。")
10 3.14 我们要树立Python编程的规范意识。
空格 空格
· 还可以通过变量名打印其标识的数据:
>>> num1=10
>>> print(num1) # 打印num1代表的数据10
10
【任务2.2 键盘输入成绩并打印】
【任务分析】
· 本任务要求用户通过键盘输入同学的姓名及成绩,然后打印输出,从而提升程序的适应性和交互性。需要完成的具体工作内容如下表所示:
2.2.1 数据类型
· 现实生活中,我们使用的数据形式多样,包括整数、小数、文本信息等;程序设计中,也需要对数据的类型加以区分,从而进行不同的处理。
· Python常用的数据类型有数值型、字符串和组合型数据类型(例如列表、元组、集合、字典)。
1.数值类型
· 数值类型包括整数类型(int)、浮点数类型(float)、复数类型(complex)和布尔类型(bool)。
(1)整数类型。
· 整数类型(int)简称整型,用于表示整数。
整型: 0 100 -10
(2)浮点型。
· 浮点型(float)即小数,由整数部分、小数点和小数部分组成。对于较大、较小的数,Python使用科学计数法表示。
浮点型: 1.2 -10.5 3E-2
(3)复数型。
· 复数型由实部和虚部两个部分组成。
复数型: 3+4j 10-5j
(4)布尔型。
· 布尔型只有两个值:True和False,代表逻辑真假值,通常用在条件判断和循环语句中。
· 布尔型可以看作特殊的整型,True对应整数1,False对应整数0.
布尔型:True False
2.字符串类型
· 字符串类型可以用来表示和存储文本信息,即一系列字符(字母、中文、符号、标点等)。
· 在Python中字符串通常用单引号、双引号或者三引号包裹起来,示例如下:
>>> 'This is a string.' # 用单引号包裹字符串
'This is a string.'
>>> "This is a string, too" # 用双引号包裹字符串
'This is a string, too'
>>>s1='''I like Python.''' # 用三引号包裹字符串,并赋值给变量s1
>>> print(s1) # 打印s1代表的字符串
I like Python.
3.组合型数据类型
· 组合数据类型可以存放一组数据。
· Python提供了列表、元组、字典与集合等组合数据类型。
· 例如列表:列表list可以存放任意数量、任意数据类型的数据,Python中可以使用“[]”创建列表,列表中的数据项之间使用逗号“,”分隔,示例如下:
>>>namelist= ["张小帆", "欧雷雷", "于田田"] # 使用列表存放姓名清单
>>>scorelist= [90, 85, 70] # 使用列表存放某课程的分数清单
2.2.2 数据类型的判断
· 在程序设计中,有时候需要判断某个变量的数据类型,进而采取不同的处理措施。
· Python提供了type()函数,用于查看变量的数据类型,示例如下:
>>> data1=10
>>> type(data1) # 获取变量data1的数据类型,返回整型
<class 'int'>
>>> data2=6.18
>>> type(data2) # 获取变量data2的数据类型,返回浮点型
<class 'float'>
>>> data3="I like Python."
>>> type(data3) # 获取变量data3的数据类型,返回字符串类型
<class 'str'>
· Python还提供了isinstance()函数用来判断某个变量是否为某种数据类型,并返回判断结果(布尔值True或False),示例如下:
>>> data1=10
>>> isinstance(data1,int) # 判断data1是否为整型,返回结果为True
True
>>> data2=10.0
>>> isinstance(data2,int) # 判断data2是否为整型,返回结果为False
False
2.2.3 数据类型的转换
· Python内置了一系列可用于数据类型强制转换的函数:int(x)、float(x)、complex(x)、bool(x)、str(x),分别用于将某变量x转换为整数、浮点数、复数、布尔值、字符串。
· 常见的用法示例如下:
>>> int(3.14) # 将浮点数3.14转换为整数,去掉小数部分
3
>>> int("100") # 将字符串"100"转换为整数
100
>>> float(10) # 将整数10转换为浮点数
10.0
>>> float("100") # 将字符串转换为浮点数
100.0
>>> str(3.14) # 将浮点数转换为字符串
'3.14'
· Python中还有一个较为特殊的函数eval(),它可以将字符串转换为其表达式的值。
· 相对于int()、float()等函数,eval()函数具有更强大的数据解析能力。示例如下:
>>> eval("3.14") # 返回字符串"3.14"转换的数值(浮点数)
3.14
>>> eval("10+20") # 返回10+20的值
30
2.2.4 数据的输入
· 程序运行的过程中,有时需要用户输入部分数据。
· Python提供了input()函数,它可以接收用户键盘输入的数据,这个数据可以存放在变量中。
· 例如让用户输入用户名和密码,示例如下:
· 需要注意是,使用input( )函数接收用户输入的信息均为字符串类型,要想得到整型、浮点型等数据类型,需要进行强制转换,示例如下:
>>> age=input("请输入您的年龄:") # 要求用户通过键盘输入年龄,并赋值给age
请输入您的年龄:20
>>> type(age) # 查看age的数据类型,结果为字符串
<class 'str'>
>>> age_int=int(age) # 将age强制转换为整数类型,并赋值给age_int
>>> type(age_int) # 查看age_int的数据类型,结果为整型
<class 'int'>
【任务2.3 计算总成绩及平均成绩】
【任务分析】
· 针对期末成绩,还需要完成计算总成绩、求平均成绩等工作,具体工作内容如下表所示:
2.3.1 算术运算符
· 在数学领域,我们可以使用加减乘除等运算;为了完成多种计算逻辑,Python也提供了算术运算、关系运算、逻辑运算、赋值运算、成员运算等多种运算。
· Python中每一种运算,都有特定的符号,这些符号称之为运算符;程序运行的过程中,运算符会告诉解释器执行某项数学运算或者逻辑运算,进而得到相应的结果。
· Python的算术运算符与数学中的算术运算符基本一致,主要用于数值的计算。
· 假定变量 a = 10、b = 2,下表列出了 Python支持的算术运算符及运算结果:
2.3.2 关系运算符
· 关系运算符也称为比较运算符,用于比较两个变量的大小,其运算结果为布尔值(True或者False);当关系表达式成立时,运算结果为True,否则为False。
· 假定变量a = 10、b = 20,下表列出了Python支持的关系运算符及运算结果:
2.3.3 逻辑运算符
· 逻辑运算通常用于布尔值的运算,下表列出了Python支持的逻辑运算符及其说明:
· 具体示例如下:
>>> a=True
>>> b=False
>>> print(a and b) # 逻辑“与”,a与b的值均为True时,结果才为True
False
>>> print(a or b) # 逻辑“或”,a或者b的值中有一个True,结果即为True
True
>>> print(not a) # 逻辑“非”,a=True,则not a返回False
False
2.3.4 成员运算符
· 成员运算符用于判断一个数据是否在一个群体(字符串、列表、集合等)中,其运算结果为布尔值(True或者False);下表列出了Python支持的成员运算符及运算结果:
2.3.5 赋值运算符
· 赋值运算符主要是为变量赋值,其功能为将等号右侧表达式的值,赋给左侧的变量。
· 下表列出了Python语言支持的部分赋值运算符及相关说明:
2.3.6 运算符优先级
· 程序设计中,表达式是根据不同应用场景,用运算符、括号将数据连接起来的有意义的式子。
· Python中,一个表达式可以使用多个运算符,从而实现相对复杂的功能。当一个表达式中出现了多个运算符时,需要遵循Python设定的优先级进行运算。
· Python中常用运算符的优先级顺序(由高到低)如下表所示:
总结评价
学习任何一门编程语言都要掌握一定的语法基础,梳理规范意识。与多数程序设计语言相比,Python的语法更加简洁明了。在打印成绩单项目中,我们学习了基本的数据类型、变量等基础知识,学会了使用input()函数接收键盘输入的数据,使用print()函数将信息输出(打印)到计算机屏幕上。此外,Python也支持算术、关系、逻辑等运算符,借助这些运算符,我们完成了成绩处理。
$$