计算机Python教学课件第6讲循环字符串.pptx

上传人(卖家):晟晟文业 文档编号:3652856 上传时间:2022-10-01 格式:PPTX 页数:49 大小:627.52KB
下载 相关 举报
计算机Python教学课件第6讲循环字符串.pptx_第1页
第1页 / 共49页
计算机Python教学课件第6讲循环字符串.pptx_第2页
第2页 / 共49页
计算机Python教学课件第6讲循环字符串.pptx_第3页
第3页 / 共49页
计算机Python教学课件第6讲循环字符串.pptx_第4页
第4页 / 共49页
计算机Python教学课件第6讲循环字符串.pptx_第5页
第5页 / 共49页
点击查看更多>>
资源描述

1、计算机科学导论Python程序设计第6讲 循环-字符串商务信息学院 信息管理系 教师:柳青 电子信箱:L 办公室:博识楼418 电话:67703852 答疑时间:周三34节,8-15周 周四5-8节,1-16周 周五1-4节,16、810、14、16、17周 夜间自习辅导时间:周四1112节,110周教师信息2两个问题 While语句的结构 输入数据input和raw_inputwhile语句表达式循环体真(非零)假(零)格式格式1:while 表达式表达式:循环体循环体表达式循环体真(非零)假(零)Else语句问题:else可不可以去掉?为什么?格式格式2:while 表达式表达式:循环体循

2、环体else:语句语句第一种情况第二种情况 Python中提供了input()函数用于输入数据,该函数通常的使用方式如下:=input()执行时首先在屏幕上显示提示字符串,然后等待用户输入 将用户输入作为一个表达式进行解释、求值,将求值结果赋予变量。回顾数据输入7 输入函数raw_input(),用于字符串数据输入时更方便。格式:=raw_input()执行时首先在屏幕上显示提示字符串,然后等待用户输入(以回车键表示输入完毕),用户键入的所有内容视为一个普通的字符串而不是表达式,该字符串就是raw_input的返回值,可以赋值给其他变量。例如:回顾输入函数raw_input()8 在通常情况下

3、,如果需要输入数值或数值表达式,最好用input;如果需要输入字符串,最好使用raw_input。回顾 input与raw_input的比较9再议input和raw_input 用raw_input输入数值:先作为字符串输入,再通过类型转换函数如int()、long()、float()、eval()函数将字符串转换为数值回顾练习1.给定一个由10个整数值构成的列表,编程删除列表中所有下标为奇数的元素。保存为exam1.py第1种方法:第2种方法:回顾练习2.给定一个由10个整数值构成的列表,编程删除列表中所有值为奇数的元素。保存为exam2.py回顾练习3.给定一个由10个整数值构成的列表,编

4、程只对列表中下标为偶数的元素进行升序排列。保存为exam3.py回顾练习4.输出“水仙花数”。所谓水仙花数是指一个3位的十进制数,其各位数字的立方和等于该数本身。例如:153是水仙花数,因为153=13+53+33。保存为exam4.py用while循环实现用for循环实现另外一种算法实现水仙花数,保存为exam4_2.py字符串 1.字符串问题 2.字符串基础知识 3.字符串函数 4.字符串知识的应用问题 列表Li中有一些单词,把这些单词分别进行升序排序和降序排序。Li=apple,peach,wps,word,access,excel,open,seek 分析:应用列表的排序函数sort(

5、)能完成升序排序和降序排序。程序保存为Ques5_1.py程序及运行结果 运行结果思考题:如果换成Li2=Li结果有什么影响?1 字符串格式化说明:(1)中的内容可以省略;(2)简单的格式是%加格式字符,如%f、%d、%c等;(3)当最小宽度及精度都出现时,它们之间不能有空格,格式字符和其他选项之间也不能有空格。如%8.2f两个单引号是字符串标记,也可以用双引号对表1 格式字符的含义格式说明%c格式化字符或编码%s格式化字符串%d格式化整数%u格式化无符号整数%o格式化八进制数%x格式化十六进制数%f格式化浮点数,可指定小数位数%e用科学计数法格式化浮点数最小宽度和精度 最小宽度是转换后的值所

6、保留的最小字符个数 精度(对于数字来说)则是结果中应该包含的小数位数%f格式化浮点数,可指定小数位数%s格式化字符串%d格式化整数必须是一个元组进位制和科学计数法 把一个数转换成不同的进位制,也可按科学计数法进行转换;格式化字符的使用 例1 利用格式化字符输出“九九乘法表”,程序保存为eg1_table.py,并与循环中的“九九乘法表”的输出作比较。比较2 字符串的截取 1字符串中字符的位置2字符串的截取 截取有两种方法:索引 sindex取出一个字符;切片sstart:end取出一片字符3 字符串的方法 1.子串查找find()格式:s.find(sub,start,end)功能:在主串中查

7、找子串,找到则返回主串中的位置,找不到则返回-1。不包含end2字符串的分离split()如果字符串中的某种字符出现0次或多次,可以根据该字符把字符串分离成多个子串组成的列表3字符串联接join()Join()方法是split()方法的逆方法,用来把列表中的各字符串联起来。4转换为小写字母lower()Lower()方法返回一个新串,该串把原串中的大写字母全部转换成小写字母,其他字符不变。这种方法对“不区分大小写”的程序非常有用。思考题:1、当前S字符中的值是什么?2、如何将字符串中的字母转换为大写字母?5查找替换replace()replace()方法返回原字符串中所有匹配项都被替换之后得到

8、的新字符串,原字符串保持不变。没有匹配项6删除两端空格strip()strip()方法返回字符串的副本,该副本删除了原字符串两端的空格。原字符串保持不变。思考:如何去除字符串中间空格?思考:如何去除字符串中间空格?5.2.4 与字符串相关的重要内置方法 ASCII码 Ord()求字符编码 Chr()返回指定编码的字符的方法 Int(x,d)Int()函数返回数字x的整数部分,或把d进位的字符串转换成十进制数1.把对象转换成字符串str()str()方法能把任何对象转换为字符串2.把字符串转换成浮点数float()float()方法能把字符串转换成浮点数,被转换的字符串不能包括非数字字符产生随机

9、数 产生随机数需要导入random模块,其中random.randint(a,b),用于生成一个指定范围内的整数。其中参数a是下限,参数b是上限,生成的随机数n:a=n=b;random.randrange(start,stop,step),从指定范围内,按指定基数递增的集合中获取一个随机数。3 字符串基础知识的应用 示例2 随机产生15个不重复的取自AZ的大写字母,并将其存放在序列中。程序保存为eg2_chr.py3 字符串基础知识的应用例3 查找用户名,在列表中查找一个用户名“admin”是否存在。要求用户如果输入“Admin”或者“ADMIN”都能找到(即不区分大小写)。程序保存为eg3

10、_query.py3 字符串基础知识的应用例4 用户输入几个数字,用逗号分隔,编程求这些数字的和,程序保存为eg4_sum.py分析:用户输入的数字个数虽然是动态的,但是可以当作一个字符串来处理。首先分离出数字串,然后再转换成数字,这样就能求和。输入及程序运行结果示例5 讨论算法:求最小值以及下标(方法一)给定列表50,40,20,30,10,求最小值以及下标 方法一:直接用内建函数min(),然后根据这个最小值找下标,程序保存为“eg5_min1.py”。执行结果:改进 提高算法的效率示例5 讨论算法:求最小值以及下标(方法二)方法二:不用内建函数min()程序保存为“eg5_min2.py

11、”示例6-选择排序法 给定列表50,40,20,30,10,不用sort方法排序,不用min方法求最小值,利用选择排序法按列表中的值由小到大进行升序排序 保存为eg6_sort.py【思想】先从全体n个数据中找出最小值,并将该最小值排在第一个位置 如何排在第1个位置:将最小值与本轮序号第1的数进行交换。然后从剩下的n-1个数据中再次找出最小值,这个最小值其实是全体数据的次小值,将它排在第二个位置 以此类推,直至从剩下的两个数据中找出最小值,排在第n-1个位置,而剩下的最后一个数据(全体数据中的最大值)可以直接排在第n个位置。运行结果示例6-程序eg6_sort.py将本轮循环最小数与本轮序号对应的数进行交换找到本轮循环最小数,将值存于mm,并将该数序号记录于k中练习输入一串字符,统计大写字母的个数、小写字母的个数、数字的个数和其它字符的个数并输出结果。程序保存为exam6_1.py用户输入若干个分数,求所有分数的平均分。每输入一个分数后询问是否继续输入下一个分数,只要第一个字符为“y”就继续输入下一个分数,回答“no”就停止输入分数。程序保存为exam6_2.py运行结果:下周展望 函数

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 办公、行业 > 计算机与IT类
版权提示 | 免责声明

1,本文(计算机Python教学课件第6讲循环字符串.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|