资源简介 (共80张PPT)程序设计入门项目五项目导读我们所使用的计算机系统、手机系统、各种 App、浏览的网页等都是由程序来完成的,可以说,在当代信息社会,程序和数据一样,已经无处不在。正因为有了这些程序,科技发展才会如此迅速,我们的生活才会如此便利。信息技术:基础模块(下册)知识框架信息技术:基础模块(下册)任务二设计简单程序任务描述信息技术:基础模块(下册)本任务通过对一段文本中的数字、字母、空格等字符个数的统计,进一步掌握Python 中字符串的定义和使用,以及循环语句和分支语句的使用。任务提示信息技术:基础模块(下册)实现本任务首先要打开 PyCharm 开发工具并新建项目,才可以编写 Python 代码实现计算一段文本中数字、字母、空格的字符个数。通过该任务,我们可以学会基本的Python 代码编写以及 PyCharm 开发工具的简单使用。要完成本任务,需要进行如下操作:(1)打开 PyCharm 开发工具并新建项目。(2)在新建的项目中创建 Python 文件。(3)编写 Python 代码实现功能。(4)在 PyCharm 开发工具中启动项目并在控制台测试代码结果。任务完成信息技术:基础模块(下册)步骤01:打开PyCharm并创建项目。在PyCharm中创建一个Python项目,如图5-1所示。任务完成信息技术:基础模块(下册)步骤 02:选择“New Project”选项,进入创建项目界面,如图 5-2 所示。任务完成信息技术:基础模块(下册)步骤 03:进入编写代码的控制台。需要注意的是,Location 文本框中是创建项目所在的路径,此处使用默认的路径,不做修改,单击“Create”按钮,完成项目创建并进入编写代码的控制台,如图 5-3 所示。任务完成信息技术:基础模块(下册)步骤 04:右击项目名称,选择“New”→“Python File”命令,如图 5-4 所示。弹出创建 Python 项目界面,如图 5-5 所示。任务完成信息技术:基础模块(下册)在图 5-5 所示的 Name 文本框中输入文件名称“text01”,最后选择“Python fi le”选项,进入 text01 的编写代码界面。步骤 05:在 text01 文件中输入代码如下:s=input(' 随意输入字符 :') # 从键盘输入字符并命名为 sletters=0 # 定义一个名称为 letters 的变量space=0digit=0for m in s: # 使用 for 循环输入的字符 sif m.isalpha(): # 如果所循环的字符为字母letters=letters+1 #letters 变量 +1elif m.isspace(): # 如果所循环的字母为空格space=space+1 #space 变量 +1elif m.isdigit(): #else:之后不能有判断语句,应该直接上需要输出的结果digit+=1print('字母有{}个,空格有{}个,数字有{}个'.format(letters,space,digit))任务完成信息技术:基础模块(下册)需要注意以下两点:(1)上述代码中“#”后的文字为注释部分,是对本行代码做的解释,对代码运行结果不会产生影响。(2)编写代码时,要注意对齐方式与上述代码一致,否则将无法正常运行代码。步骤 06:在 text01 文件代码中右击,选择“Run‘text01’”命令,运行 text01 文件,并在控制台查看效果,如图 5-6 所示。任务完成信息技术:基础模块(下册)在控制台“随意输入字符:”后输入“Hi Python,This’s Text01”,再按 Enter 键,控制台效果如图 5-7 所示。到此,使用 Python 计算一段文字中的数字、字母、空格的字符个数的代码就已结束。必备知识信息技术:基础模块(下册)一、Python 基础知识1. Python 简介自 20 世纪 90 年代初 Python 语言诞生至今,它已逐渐被广泛应用于系统管理任务的处理和 Web 编程。Python 的创始人为荷兰人吉多·范罗苏姆。Python 的标志如图 5-8 所示。必备知识信息技术:基础模块(下册)2. Python 标识符标识符是开发人员在程序中自定义的一些符号和名称,如变量名、函数名等。3. Python 行和缩进在 Python 中,逻辑行行首的空白是有规定的,逻辑行行首的空白不正确,就会导致程序执行出错。这是与其他语言不同的一个重要方面。缩进的空白是有要求的,下面是一些缩进的方法。(1)一般情况下逻辑行行首不应该出现空白。(2)if 语句的缩进方法。(3)while 循环的缩进方法。必备知识信息技术:基础模块(下册)具体的缩进方法如下所示:# 一般情况下,行首不应该出现空白import sys# 缩进的方法有两种,可以按空格,也可以按 Tab 键#if 语句的缩进方法a=7if a > 0:print “hello” # 前面的空格是按 Tab 键#while 语句的缩进方法a=0while a<7:print a # 前面的空格是按 Tab 键a+=1 # 前面的空格是按 Tab 键必备知识信息技术:基础模块(下册)4. Python 引号Python 中的引号有如下 2 个作用:(1)表示多行注释。一对三个单引号或双引号表示多行注释。(2)用于定义字符串。①单引号字符串:'abc'。②双引号字符串:"abc"。③三引号字符串:"'abc"'(三单引号),"""abc"""(三双引号)。必备知识信息技术:基础模块(下册)总结如下:(1)单引号内可以使用双引号,中间的内容会当作字符串打印。(2)双引号内可以使用单引号,中间的内容会当作字符串打印。(3)三单引号和三双引号中间的字符串在输出时会保持原来的格式。(4)引号无论单双都是成对出现的,当字符串需要加入引号时,可采用单引号与双引号互相嵌套使用。(5)Python 支持单引号,因为在某些场景下需要用到单引号,用“\”转义符转义,或者外加一对双引号;如果是双引号,则外加一对单引号。必备知识信息技术:基础模块(下册)5. Python 数据类型(1)整型 int。整型是没有小数部分的数字,如 -5、-4、-3、0、7、9 等。(2)浮点型 fl oat。浮点型表示的是带有小数点部分的数字,如 1.234、-0.05、11.25 等。(3)字符串 str。字符串表示的是文本。为了表示一个字符串的值,需要用单引号(' ')或双引号("")引起来。(4)长整型 long。长整型是整型的超集。(5)布尔型 bool。该值的取值只有两个:True(1) 和 False(0)。(6)空值 None。Python 有一个特殊的空值常量 None。必备知识信息技术:基础模块(下册)6. 变量与常量(1)变量。在程序运行过程中,值可以不断变化的量即为变量。(2)常量。与变量相反,在程序运行过程中值不能被修改的量即为常量。Python 中没有专门定义常量的方式,通常使用大写变量名表示,仅仅是一种提示效果。必备知识信息技术:基础模块(下册)7. 关键字关键字也称为保留字,每一种程序设计语言都有预先定义的具有特别意义的关键字。Python 语言有 33 个关键字,见表 5-2。必备知识信息技术:基础模块(下册)必备知识信息技术:基础模块(下册)8. Python 注释注释的内容对程序的运行结果没有影响。Python 中的注释分为单行注释和批量、多行注释。(1)单行注释。Python 中的单行注释以“#”开头。(2)批量、多行注释。Python 的批量、多行注释用三引号包含要注释的内容,可以是三个单引号,也可以是三个双引号。必备知识信息技术:基础模块(下册)9. Python 运算符Python 语言支持以下几种类型的运算符:(1)算术运算符。Python 的算术运算符主要完成操作数的算术运算,包括加、减、乘、除、幂、取整等,具体描述及实例见表 5-3。必备知识信息技术:基础模块(下册)(2)比较运算符。比较运算符主要完成操作数的比较计算,比较的结果通常是一个逻辑量。Python 的比较运算符描述及实例见表 5-4。必备知识信息技术:基础模块(下册)(3)赋值运算符。赋值运算符“=”表示将右侧的值赋给左侧的变量或表达式。除简单的赋值运算符外,Python 还提供了复合的赋值运算符,见表 5-5。必备知识信息技术:基础模块(下册)(4)逻辑运算符。逻辑运算符用于将两个变量或表达式进行逻辑运算。Python的逻辑运算符有与、或、非 3 种,见表 5-6。必备知识信息技术:基础模块(下册)(5)成员运算符。除了上述运算符之外,Python 还支持成员运算符,用于测试实例中是否包含了一系列成员,包括字符串、列表或元组。Python 的成员运算符描述及实例见表 5-7。必备知识信息技术:基础模块(下册)(6)身份运算符。身份运算符用于比较两个对象的存储单元,即判断两个标识符是否引自同一个对象,见表 5-8。必备知识信息技术:基础模块(下册)10. 运算符的优先级表 5-9 列出了 Python 运算符的优先级。表格中自上至下优先级逐渐降低。拓展训练信息技术:基础模块(下册)编写 Python 程序,模拟如下手机充值场景:计算机提示:欢迎使用手机充值业务,请输入充值金额。假设账户初始余额为 10 元,用户又充值 10 元。计算机输出:充值成功,您本次充值 10 元,账户余额为 20 元,如图 5-9 所示。其实现代码如下所示:必备知识信息技术:基础模块(下册)二、程序的结构1. 顺序结构顺序结构是程序按照限行顺序依次执行的一种方式(图 5-10),其中语句块 1 和语句块 2 标识一个或一组顺序执行的语句。必备知识信息技术:基础模块(下册)(1)input() 函数。input() 函数用于获取用户通过键盘输入的字符。input()函数从键盘读取的数据是作为字符串来处理的,不论是否使用引号(' ' 或 " ")。例如:必备知识信息技术:基础模块(下册)可以看到 input 的返回值永远是字符串,当需要返回 int 型时需要使用 int(input()) 的形式。例如:必备知识信息技术:基础模块(下册)(2)print() 函数。print() 函数用于实现数据的输出,可以用逗号分隔单个或多个表达式,例如:这将产生以下结果:拓展训练某超市到货一批商品,需要在程序中计算各商品价格的总和以及所有商品的价格总和。假设到货的商品依次是:可乐,单价为 2.8 元,需要入库的数量为 30;洗手液,单价为 18.8 元,需要入库的数量为 20;酒精,单价为 21.5 元,需要入库的数量为 30;儿童玩具,单价为 35.9 元,需要入库的数量为 15。信息技术:基础模块(下册)拓展训练下面编写 Python 代码计算商品总和。信息技术:基础模块(下册)拓展训练其代码运行结果如图 5-11 所示。信息技术:基础模块(下册)必备知识信息技术:基础模块(下册)2. 分支结构分支结构也叫选择结构。Python 中的分支结构可以分为三种,即单分支结构、二分支结构和多分支结构。(1)单分支结构。单分支结构使用 if 语句实现。语法格式如下:必备知识信息技术:基础模块(下册)语句块是 if 条件满足后执行的一个或多个语句序列,语句块中语句通过与 if 所在行形成缩进表达包含关系。if 语句首先评估条件的结果值,如果结果为 True,则执行语句块中的语句序列,然后控制转向程序的下一条语句;如果结果为 False,语句块中的语句就会被跳过。if 语句的控制流程如图 5-12 所示。必备知识信息技术:基础模块(下册)单分支结构程序示例如下:执行结果如下:考试成绩良好(2)二分支结构。二分支结构用 if-else 语句实现。语法格式如下:必备知识信息技术:基础模块(下册)语句块 1 是在 if 条件满足后执行的一个或多个语句序列,语句块 2 是 if 条件不满足后执行的语句序列。二分支结构用于区分条件的两种可能,即 True 或 False,分别形成执行路径。if-else 语句的控制流程如图 5-13 所示。必备知识信息技术:基础模块(下册)二分支结构程序示例如下:必备知识信息技术:基础模块(下册)执行结果如下:通过了考试,恭喜你(3)多分支结构。多分支结构用 if-elif-else 实现。语法格式如下必备知识信息技术:基础模块(下册)多分支结构是二分支结构的扩展,这种形式通常用于设置同一个判断条件的多条执行路径。Python 依次评估寻找第一个结果为 True 的条件,执行该条件下的语句块,结束后跳过整个 if-elif-else 结构,执行后面的语句。如果没有任何条件成立,else 下面的语句块将被执行。else 子句是可选的。多分支结构的控制流程如图 5-14 所示。必备知识信息技术:基础模块(下册)多分支结构程序示例如下:拓展训练运行下列程序,阅读程序代码,参照注释语句分析程序功能。信息技术:基础模块(下册)拓展训练(1)在 PyCharm 开发工具中新建名称为 text04 的 Python 文件,输入上述代码。(2)运行 text04 程序, 分别输入公里数 5/25/80, 输出票价, 如图 5-15、图 5-16、图 5-17 所示。信息技术:基础模块(下册)拓展训练(3)通过代码、注释和程序运行结果,可以分析出该程序实现了根据输入的路程公里数计算并输出地铁票价的功能。计算规则:5 公里(含)内 2 元;5~10 公里(含)3元;10~20 公里(含)5 元;20~30 公里(含)7 元;30 公里以上,每增加 20 公里多1 元(目前单程最高票价 9 元)。总路程超过 30 公里的票价计算方法为 price=6+(int(km-30)//20+1),当 price>9 时,给其赋值为 9 以满足单程最高票价为 9 元,其中 km为路程公里数。信息技术:基础模块(下册)必备知识信息技术:基础模块(下册)3. 循环结构根据循环执行次数的确定性,循环可以分为确定次数循环和非确定次数循环。(1)for 循环。for 循环可以遍历任何序列的项目,如一个列表或一个字符串。for循环的语法格式如下:必备知识信息技术:基础模块(下册)之所以称为遍历循环,是因为 for 语句的循环执行次数是根据遍历结构中元素个数确定的。遍历循环可以理解为从遍历结构中逐一提取元素放在循环变量中,对于所提取的每个元素执行一次语句块。for 循环结构程序示例如下:必备知识信息技术:基础模块(下册)执行结果如下:必备知识信息技术:基础模块(下册)(2)while 循环。while 语句用于循环执行程序,即在某条件下循环执行某段程序,以处理需要重复处理的相同任务。其形式有如下两种:①基本形式。语法格式如下:必备知识信息技术:基础模块(下册)执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零或非空的值均为 True。当判断条件为 False 时,循环结束。while 语句基本形式程序示例如下:必备知识信息技术:基础模块(下册)执行结果如下:必备知识信息技术:基础模块(下册)② while-else 形式。语法格式如下:必备知识信息技术:基础模块(下册)在执行语句的过程中,循环条件为 False 时执行 else 语句块。while-else 形式程序示例如下:必备知识信息技术:基础模块(下册)执行结果如下:拓展训练我国古代数学名著《孙子算经》中记载了一道数学趣题:今有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二,问几何?关于此题的解法,可以使用 while 循环语句实现从 1 开始依次尝试符合条件的数,直到找到符合条件的数时退出循环。具体的实现思路如下:(1)定义一个用于计数的变量 number 和一个作为循环条件的变量 none(默认值为真)。(2)编写 while 循环语句,在循环体中将变量 number 的值加 1,并且判断 number的值是否符合条件。(3)当条件符合时,将变量 none 设置为假,从而退出循环。信息技术:基础模块(下册)拓展训练具体代码如下:信息技术:基础模块(下册)拓展训练运行程序,控制台效果如图 5-18 所示。信息技术:基础模块(下册)必备知识信息技术:基础模块(下册)三、运用典型算法1. 排序算法排序是数据处理中经常使用的一种算法,即把数据排列为从小到大的顺序或从大到小的逆序。排序算法有很多,如选择排序、插入排序、冒泡排序、堆排序、归并排序等。数据处理通常会涉及很多数据,这些数据需要一个容器进行管理,这个容器就是数据结构。知识链接Python没有数组结构,因为数组要求元素类型是一致的,而 Python是动态类型语言,不强制声明变量的数据类型。信息技术:基础模块(下册)知识链接①创建列表。创建列表可以使用方括号“[ ]”将元素括起来,元素之间用逗号分隔,如:信息技术:基础模块(下册)需要注意的是,创建空列表使用“[ ]”表示。知识链接②追加元素。列表中可以追加单个元素,使用“append()”方法,也可以追加另一个列表,使用“+=”运算符或“extend()”方法,如:信息技术:基础模块(下册)知识链接③插入元素。列表中插入元素可以使用“insert ()”方法在指定索引位置插入一个元素,如:信息技术:基础模块(下册)④替换元素。替换列表的元素可以使用“=”运算符,如:知识链接⑤删除元素。删除列表中的元素可以使用“remove()”方法或“pop()”方法。“remove()”方法从左至右查找列表中的元素,如果找到匹配的元素则删除;如果找到多个匹配元素,则只删除第一个;如果没有找到则提示错误。“pop()”方法删除指定索引位置上的元素,如果不指定索引位置,则删除最后一个元素,如:信息技术:基础模块(下册)必备知识信息技术:基础模块(下册)2. 选择排序算法选择排序算法的基本思路:每一次从待排序的数据中选出最小元素,顺序放在之前已经排好序的数据最后,直到全部数据排序完毕。具体实现方法:取第一个数去和后面的数逐一比较,一轮之后得到最小的数放在第一个,然后开始取第二个,重复之前的比较。示例代码如下:必备知识信息技术:基础模块(下册)3. Python 功能库Python 既有内置函数和标准库,又有第三方库和工具,可用于文件读写、网络抓取和解析、数据连接、音视频处理、数据挖掘、机器学习等。灵活运用 Python 功能库,能够扩展程序功能,提高编程效率。通常用“import”就可以引入 Python功能库。例如,要与MySQL数据库建立连接,就要使用第三方库“pymysql”,引入这个库的语句为:import pymysql:拓展训练信息技术:基础模块(下册)根据班级同学期中考试的分数,将总分从高到低进行排序。将总分进行排序时可以使用上面介绍的任意一种排序算法,设成绩总分列表为“scores”,因为分数需要从高到低排序,在比较两个数时,较大的数应往前排列。采用选择排序算法,编写如下程序代码片段:拓展训练信息技术:基础模块(下册)其中,“reverse”为顺序规则,“False”为升序(默认),“True”为降序。因此,本例还可以采用以下代码片段实现总分从高到低排序:实践体验信息技术:基础模块(下册)九九乘法表是小学阶段必备的数学口诀,下面使用 Python 代码编写程序并在控制台打印九九乘法表,其实现思路为使用双层 for 循环,如图 5-19 所示。图 5-19 九九乘法表的循环流程实践体验信息技术:基础模块(下册)在图 5-19 中,第一个循环可以看成是对乘法表行数的控制,同时是每一个乘法公式的第二个因数;第二个循环控制乘法表的列数,列数的最大值应该等于行数,因此第二个循环的条件应该是在第一个循环的基础上建立的。使用嵌套的 for 循环打印九九乘法表,代码如下:实践体验信息技术:基础模块(下册)程序运行结果如图 5-20 所示。图 5-20 九九乘法表效果项目思政信息技术:基础模块(下册)本项目主要讲解了计算机程序、程序设计语言、程序基本结构、Python 基本语法及排序算法的基本知识,能够使读者初步掌握程序设计的方法,使用程序设计工具编辑、运行和调试简单的程序,初步具备运用程序设计解决简单问题的能力。杨辉是中国宋代著名的数学家,他整理出的杨辉三角领先于法国数学家帕斯卡近400 年,这是我国数学史上伟大的成就。他所著的《详解九章算法》一书讲解了三角样式,分析了模型特点,确定了数组结构,发现了递推规律,确定了推演公式。通过代码推演数组结构以及推演公式,通过认识杨辉三角,激发读者的爱国热情和民族自豪感,同时也让读者树立坚定的信念,向科学家学习,成长为思想正直可靠、专业技术优秀的建设人才。项目测试信息技术:基础模块(下册)一、选择题1. 计算机语言经历了由低级到高级的过程,按照发展过程,以下顺序正确的是( )。A. 机器语言、汇编语言、高级语言B. 汇编语言、机器语言、高级语言C. 高级语言、汇编语言、机器语言D. 机器语言、高级语言、汇编语言2. Python 语言属于( )。A. 机器语言 B. 编辑语言 C. 调试语言 D. 翻译语言项目测试信息技术:基础模块(下册)3. 下列选项中,不符合 Python 命名规范的标识符是( )。A. _city12 B. vcity C. 12city D. city_name4. Python 中,数字类型不包括( )。A. int B. fl oat C. complex D. bool5. 在 Python 中,下列运算符优先级最高的是( )。A. ** B. * C. // D. /项目测试信息技术:基础模块(下册)6. 描述“60 ≤ x<100”表达式为( )。A. x>=60 and x<=100 B. x>=60 or x<100C. x>=60 and x<100 D. Not x<60 and x<=1007. 在 Python 中,要交换变量 x 和 y,应使用语句( )。A. x=y B. x=y;y=z;z=xC. z=x;y=x;y=z D. x;y=y;x8. 在 Python 中,假设 i 的初始值为 5,则执行语句“i-=i*3+2”后,i 的值为( )。A. 3 B. 18 C. -8 D. -18项目测试信息技术:基础模块(下册)9. 以下程序的输出结果是( )。A. -1 B. 1 C. -25 D. 2510. 使用选择排序法对数据“5,4,6,9,3,2”从小到大排序,共需经过( )次数据对调。A. 4 B. 6 C. 8 D. 10项目测试信息技术:基础模块(下册)二、填空题1. 程序的基本结构包括顺序结构、( )和( )。2. 循环语句可以使用 for 循环和( )实现。3. Python 中的单引号内使用双引号,中间的内容会( )。4. Python 数据类型的 fl oat 类型表示的是( )的数字。5. 根据循环执行的次数的确定性,循环可以分为( )和( )。6. 已知 x=15,那么执行语句 x+=6 后,x 的值为( )。7. Python 用于跳出本次循环,继续执行下一次循环的关键字是( )。8. Python 可以引入 Python 功能库的关键字是( ) 展开更多...... 收起↑ 资源预览