![项目六(第三课时)第1页](http://img-preview.51jiaoxi.com/3/14/12458547/0/0.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第2页](http://img-preview.51jiaoxi.com/3/14/12458547/0/1.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第3页](http://img-preview.51jiaoxi.com/3/14/12458547/0/2.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第4页](http://img-preview.51jiaoxi.com/3/14/12458547/0/3.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第5页](http://img-preview.51jiaoxi.com/3/14/12458547/0/4.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第6页](http://img-preview.51jiaoxi.com/3/14/12458547/0/5.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第7页](http://img-preview.51jiaoxi.com/3/14/12458547/0/6.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第8页](http://img-preview.51jiaoxi.com/3/14/12458547/0/7.jpg?x-oss-process=image/resize,w_794/sharpen,100)
![项目六(第三课时)第1页](http://img-preview.51jiaoxi.com/3/14/12458547/1/0.jpg?x-oss-process=image/resize,w_794,m_lfit,g_center/sharpen,100)
![项目六(第三课时)第2页](http://img-preview.51jiaoxi.com/3/14/12458547/1/1.jpg?x-oss-process=image/resize,w_794,m_lfit,g_center/sharpen,100)
所属成套资源:信息技术沪教版选修1数据与数据结构全册备课PPT课件+教案+单元练习
高中3.模拟实现文本函数的功能精品课件ppt
展开
这是一份高中3.模拟实现文本函数的功能精品课件ppt,文件包含项目六第三课时pptx、项目六第三课时doc等2份课件配套教学资源,其中PPT共24页, 欢迎下载使用。
第三单元 特殊的线性表项目六 探究文本字符的处理——字符串的操作第三课时 模拟实现文本函数的功能 ❑教材分析本节的主要内容是模拟实现文本函数的功能。以探究文本字符的处理为主线,整个项目分为实现文本字符编辑、实现文本查找、实现文本函数功能三个问题解决。本节课时是从探究电子表格应用中对文本字符进行连接、截取、复制,引出文本字符在计算机中对应于字符串数据,而字符串数据是以种特殊数据类型的线性表形式存储数据的。在这一课时过程中,让学生逐步理解本项目的核心概念“字符串”及字符串应用的基本操作,如连接、截取、复制等,并在活动中让学生利用 Python编程实现这些基本操作。通过这一项目学习过程,进一步培养学生的信息意识和计算思维。❑教学目标1.理解字符串的连接、截取、复制等基本操作和作用;2.能设计字符串连接、截取、复制的算法;3.能用Python编写程序,实现字符串连接、截取、复制等操作;4.培养学生的信息意识和计算思维能力。❑教学重点1.理解字符串的概念;2.理解字符串的存储结构;3.掌握字符串处理的基本操作;❑教学难点1.能编程实现字符串处理的基本操作;2.培养学生的信息意识和计算思维能力。❑教学方法体验法、讲授法、讨论法、示例法❑教学准备 计算机教室、多媒体设备、多媒体广播软件、教学课件、Python编程环境、学生上机练习的程序文件,预先编制的Python程序文件等。❑教学过程一、新课导入复习字符串的概念并尝试写出字符串抽象数据类型的定义。 ADT String:数据对象:D={ai l ai, ∈ CharacterSet,i=1,2,…,n,n>=0}数据关系:R={<ai-1,ai>l ai-1,ai ∈ D,i=2,...,n}基本操作:def Assign(self,chars) #生成一个值等于chars的字符串def Copy(self,s) #复制字符串。def Compare(self,s)#比较操作,若大于s则返回1;若等于s则返回0;若小于则返回-1def Length(self) #返回字符串的元素个数,即求长度def Concat(self,s) #连接字符串sdef SubString(self,pos,len) #pos正确,返回第pos个字符起长度为len的子串def Index(self,s,pos)#返回子串s在字符串中第pos个字符之后第一次出现的位置;若无则返回0def Replace(self,s,t) #用t替换字符串中出现的所有的子串sdef Insert(self,pos,s) #在字符串的第pos个字符位置上插入sdef Deletel(self,pos,len) #删除字符串中第pos位置开始长度为len的子串 二、字符串的基本操作1.连接(合并)操作若要将两个字符串合并,要进行连接操作,即将两个字符串连接成一个字符串,在Python语言中用+表示连接。例如,英文名s=“Cheng,Fei”,昵称t=“Adam”,s+1为“Cheng,Fei Adam”,t+s为“Adam Cheng,Fei”。C语言用连接函数streat(s,t)表示连接操作。算法的基本思想是将第二个字符数组的元素插入到第一个字符数组的尾端。2.截取子串操作文字处理软件中的选中文本一部分相当于截取子串操作。例如,若字符串s=“Cheng,Fei”,用鼠标拖曳选中“Cheng”,“Cheng”就是“Cheng,Fei”的一个子串。当然“Cheng,Fei”可以有很多种子串。在Python语言中截取子串操作是根据给定的开始位置和结束位置来截取子串的。例如,s=“Cheng,Fei”,那s[0:5]为Cheng,s[6:9]为Fei。注意子串的尾字符是结束位置的前一个字符,若省略则截取到字符串尾。算法的基本思想是在字符数组中将要截取的子串复制到结果数组中。3.求长度操作在Python语言中用len(string)可获得字符串string的长度。例如,s=“What is it?”,则len(s)为11,注意字符串中的空格也是一个字符。4.复制操作在Python语言中用赋值运算符=可实现复制操作。例如,str1=“student”,str2=str1,str1=“teacher”,结果是str2为“student",str1为“teacher”。赋值操作是将字符串赋给一个字符串变量,Python语言中用赋值运算符“=”实现赋值操作。算法的基本思想是将一个字符数组复制到另一个数组中。 三、模拟实现文本函数的功能电子表格软件还提供了许多函数,如图3-19所示,方便用户快速处理文本数据,如合并、截取字符串等。图3-19文本函数思考与讨论?你还知道其他函数的功能和对应的字符串操作吗?例如:返回字符串中最左边的字符,返回字符串中的字符个数,替换字符串中的字符等。 假设要把某学生的英文名和昵称合并在一起,可以使用软件提供的函数TEXT,也可以使用“&”连接符:要截取英文名中的姓可以使用函数MID。这些函数分别对应于字符串的连接操作和截取子本操作。例如,英文名s=“Cheng,Fe",昵称t=“Adam”,将英文名与昵称合井即s+t为“Cheng,Fei Adan”。实现过程如图3-20所示。图3-20连接操作过程若要在英文名“Cheng,Fei”中截取姓,即第1个位置开始截取5个字符,具体操作实现如图3-21所示。图3-21字符一一传送注意第1个位置对应数组下标为0,截取的子串在t数组中。 小贴士连接操作:将两个字符串连接成一个字符串。子串:字符串中任意个连续的字符组成的子序列。取子报作:在字符串中根据给定的起始、结束位置截取子串,或者根据起始位置和载取的长度来载取子串。 四、课堂活动1.画出将t字符串合并到s字符串的算法流程图,尝试完成下述代码,并理解每一条语句的作用。s=[‘ ’]*14 #定义s列表空间n=9for j in range(0,n): #s列表赋值s[j]=input("输入一个字符:")t=['A',’d','a','m’] #定义t列表m=len(t)i=nfor j in range(0,m);____________________ 参考答案:s[i]=t[j]i=i+1 2.画出在s宇符串中从第i位置开始截取长度为m的子串操作(结果保存在t中)的算法流程图,尝试完成下述代码,并理解每一条语句的作用。s=['C’,'h’,’e’,’n’,’g’,’’,’F’,’e’,’i’] #定义s列表t=['']*5n=len(s)________________for j in range(0,m);If(i<n); _________i=i+1参考答案:i=int(input(“输入截取了串的起始位置i:”))m=int(input(“输入截取子串的长度m:”))t[j]=s[i-1]
相关课件
这是一份2020-2021学年3.探究点餐数据的计算机处理过程精品ppt课件
这是一份高中信息技术教科版 (2019)选修1 数据与数据结构2.3 字符串应用课文ppt课件,共12页。PPT课件主要包含了教学目标,字符串及相关概念,字符串匹配,相关代码如下,线性表和字符串的区别等内容,欢迎下载使用。
这是一份信息技术选修1 数据与数据结构3.构建二叉树获奖ppt课件,文件包含项目七第三课时pptx、项目七第三课时doc等2份课件配套教学资源,其中PPT共22页, 欢迎下载使用。