• 652.50 KB
  • 2022-06-16 12:26:07 发布

Python安全编程项目实训教程-项目4-循环结构——成语接龙的实现课件.ppt

  • 23页
  • 当前文档由用户上传发布,收益归属用户
  1. 1、本文档共5页,可阅读全部内容。
  2. 2、本文档内容版权归属内容提供方,所产生的收益全部归内容提供方所有。如果您对本文有版权争议,可选择认领,认领后既往收益都归您。
  3. 3、本文档由用户上传,本站不保证质量和数量令人满意,可能有诸多瑕疵,付费之前,请仔细先通过免费阅读内容等途径辨别内容交易风险。如存在严重挂羊头卖狗肉之情形,可联系本站下载客服投诉处理。
  4. 文档侵权举报电话:19940600175。
项目4循环结构 【内容提要】●字符串的输入输出●字符串的访问●常用的字符串操作●while循环的正确使用●for循环的正确使用●break和continue的正确使用●循环语句的嵌套使用项目4循环结构——成语接龙的实现 字符串是Python中最常用的数据类型之一,可以使用单引号、双引号和三引号来表示,其中单引号和双引号作为字符串界定符是一样的,三引号常用于多行字符串。●单引号(""),例如:text1="HelloWorld!"。●双引号(""),例如:text1="HelloWorld!"。●三引号(""""""或""""""),例如:text1="""HelloWorld!"""。任务1接收从键盘输入成语,并连接成长龙 Python中循环可以使用while或for来实现,即在一定条件下,循环执行某段程序,实现重复处理相同任务的作用。这里我们先学习使用while来实现循环,其语法格式如下:while条件表达式:语句块任务1接收从键盘输入成语,并连接成长龙 while语句会首先判断条件表达式是否为真,如果条件表达式为真则执行后面紧跟的语句或语句块,执行完成后再次判断条件表达式是否为真,如果为真则再次执行,直到条件表达式不为真时,循环结束。也可以使用以下语法格式:while条件表达式:语句块1else:语句块2这种方法只是多了else语句,也就是说当条件表达式不为真时则执行else语句后面的语句或语句块,其他与之前的方法一样。任务1接收从键盘输入成语,并连接成长龙 如果我们需要循环无限执行,可以将while语句的条件表达式设置为永真,可以使用布尔值True,也可以用永真表达式,例如1==1等。这里建议使用布尔值True。无限循环的应用场景还是比较多的,例如,可以用在服务器上实时响应用户的请求等。任务1接收从键盘输入成语,并连接成长龙 示例2:whileTrue:idiom=input("请输入第1个成语:")print(idiom)运行结果如下:请输入第1个成语:坐井观天请输入第1个成语:天天向上请输入第1个成语:示例2中while语句后面使用了布尔类型,Python支持True(真)和False(假)两个布尔值。if语句可以作为while语句的执行语句块放入其中。任务1接收从键盘输入成语,并连接成长龙 Python中提供了break(退出循环)、continue(跳出本次循环,执行下一次)两种结束循环的方式。任务1接收从键盘输入成语,并连接成长龙示例3:tmp=""whileTrue:idiom=input("请输入第1个成语:")ifidiom=="":breakelse:tmp+=idiomprint(tmp)运行结果如下:请输入第1个成语:坐井观天坐井观天请输入第1个成语:天天向上坐井观天天天向上请输入第1个成语: 任务1接收从键盘输入成语,并连接成长龙示例4:tmp=""i=1whileTrue:idiom=input("请输入第"+str(i)+"个成语:")ifidiom=="":breakelse:tmp+=""+idiomi+=1print(tmp)运行结果如下:请输入第1个成语:坐井观天坐井观天请输入第2个成语:天天向上坐井观天天天向上请输入第3个成语: 任务2检查成语首尾字示例5:tmp=""i=1whileTrue:idiom=input("请输入第"+str(i)+"个成语:")ifidiom=="":print("GameOver!")print(tmp)breakelse:iftmp=="":tmp=idiomi+=1eliftmp[len(tmp)-1]==idiom[0]:tmp+=""+idiomi+=1else:print("不符合成语接龙规则,请重新输入!")print(tmp)运行结果如下:请输入第1个成语:坐井观天坐井观天请输入第2个成语:天天向上坐井观天天天向上请输入第3个成语:等待不符合成语接龙规则,请重新输入!坐井观天天天向上请输入第3个成语:GameOver!坐井观天天天向上 任务2检查成语首尾字 任务3避免出现重复的成语Python中提供了find方法来寻找字符串,其语法结构如下:s.find(t,start,end)返回t在s中的最左边的位置,如果没有找到返回-1。使用s.rfind()可以从字符串右边开始查找t在s中的位置。示例7:tmp=""i=1whileTrue:idiom=input("请输入第"+str(i)+"个成语:")ifidiom=="":print("GameOver!")print(tmp)breakelse:iftmp=="":tmp=idiomi+=1elif(tmp[-1]==idiom[0]andtmp.find(idiom)==-1):tmp+=""+idiomi+=1else:print("不符合成语接龙规则,请重新输入!")print(tmp) 任务3避免出现重复的成语运行结果如下:请输入第1个成语:一心一意一心一意请输入第2个成语:意见统一一心一意意见统一请输入第3个成语:一心一意不符合成语接龙规则,请重新输入!一心一意意见统一请输入第3个成语:一马当先一心一意意见统一一马当先请输入第4个成语: 任务4项目回顾与知识拓展1.Python循环语句1)while循环while循环的基本格式如下:while条件表达式:条件满足,执行循环语句 任务4项目回顾与知识拓展1.Python循环语句2)for循环for变量in序列:语句块1else:#可选语句块2for循环其实还有一个小伙伴:range()内建函数。它用于生成整数序列,其语法结构如下:range([start,]stop[,step=1])这个函数有三个参数,其中用[]括起来的两个参数是可选的。step=1表示步长为1,这个参数默认值是1。第一个参数start的默认值为0。range函数的作用是生成一个从start参数值开始,到stop参数值结束的数字序列,它常和for循环存在于各种计数循环之间。 任务4项目回顾与知识拓展1.Python循环语句3)break语句break语句的作用是结束当前循环并跳出循环体。4)continue语句continue语句的作用是结束本次循环,紧接着执行下一次循环。 任务4项目回顾与知识拓展2.循环语句嵌套为了解决复杂的问题,可以使用循环语句的嵌套。Python允许在一个循环体中嵌套另一个循环,也可以在循环体内嵌套其他循环体。3.字符串操作1)字符串大小写转换S.lower():字母大写转换成小写。S.upper():字母小写转换成大写。S.swapcase():字母大写转换成小写,小写转换成大写。S.title():将首字母大写。 任务4项目回顾与知识拓展3.字符串操作2)字符串分割、组合S.split([sep,[maxsplit]]):以sep为分隔符,把S分成一个列表(list)。maxsplit表示分割的次数,默认的分割符为空白字符。S.join(seq):把seq代表的序列——字符串序列,用S连接起来。3)字符串编码、解码S.decode([encoding]):将以encoding编码的S解码成unicode编码。S.encode([encoding]):将以unicode编码的S编码成encoding,encoding可以是gb2312、gbk、big5、…… 任务4项目回顾与知识拓展4)字符串测试S.isalpha():S是否全是字母,至少有一个字符。S.isdigit():S是否全是数字,至少有一个字符。S.isspace():S是否全是空白字符,至少有一个字符。S.islower():S中的字母是否全是小写的。S.isupper():S中的字母是否全是大写的。S.istitle():S是否是首字母大写的。 任务4项目回顾与知识拓展5)字符索引字符串对象定义为字符序列,字符在字符串中的位置称为“索引”,在Python中,序列中索引的第一个值为0,使用索引运算符“[]”查看字符串序列中的单个字符。字符串的索引位置从0开始,直至字符串长度值减1。也可以使用负索引。 任务4项目回顾与知识拓展6)连接符和操作符+:连接符。+运算符将两个字符串对象连接起来得到一个新的字符串对象。*:重复符。*运算符需要一个字符串对象和一个整数,整数表示重复字符串的次数。 任务4项目回顾与知识拓展7)字符串切片字符串切片表示从一个字符串中获取子字符串(字符串的一部分)。其格式如下:[start:end:step][:]:提取从开始到结尾的整个字符串。[start:]:提取从start开始到结尾的字符串。[:end]:提取从开始到end-1的字符串。[start:end]:提取从start开始到end-1结尾的字符串。[start:end:step]:提取从start开始到end-1结尾的字符串,每step个字符提取一个。需要注意的是,字符串的索引是从0开始的,左侧第一个字符的位置为0,右侧最后一个字符的位置为-1。 任务4项目回顾与知识拓展8)其他字符串方法