计算机Python教学课件第6讲循环字符串_第1页
计算机Python教学课件第6讲循环字符串_第2页
计算机Python教学课件第6讲循环字符串_第3页
计算机Python教学课件第6讲循环字符串_第4页
计算机Python教学课件第6讲循环字符串_第5页
已阅读5页,还剩44页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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 表达式:循环体else:语句第一种情况第二种情况Python

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

3、要输入字符串,最好使用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个整数值构成的列表,编程只对列表中下标为偶数的元素进行升序排列。保存为exam3

4、.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( )能完成升序排序和降序排序。程序保存为Ques5_

5、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)功能:在主串中查找子串,找到则返回主串中的位置,找不到则返回-1。不包含

7、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 ( )方法能把字符串转换成浮点数,被转换的字符串不能包括非数字字符产生随机数产生随机数需要导入random模块,其中r

9、andom.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_query.py3 字符串基础

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

11、40,20,30,10 ,不用sort方法排序,不用min方法求最小值,利用选择排序法按列表中的值由小到大进行升序排序保存为eg6_sort.py【思想】先从全体n个数据中找出最小值,并将该最小值排在第一个位置如何排在第1个位置:将最小值与本轮序号第1的数进行交换。然后从剩下的n-1个数据中再次找出最小值,这个最小值其实是全体数据的次小值,将它排在第二个位置以此类推,直至从剩下的两个数据中找出最小值,排在第n-1个位置,而剩下的最后一个数据(全体数据中的最大值)可以直接排在第n个位置。运行结果示例6-程序eg6_sort.py将本轮循环最小数与本轮序号对应的数进行交换找到本轮循环最小数,将值存于mm,并将该数序号记录于k中练习输

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论