收藏 分销(赏)

零基础学python全套课后题带目录.pdf

上传人:曲**** 文档编号:225131 上传时间:2023-03-08 格式:PDF 页数:237 大小:9.18MB
下载 相关 举报
零基础学python全套课后题带目录.pdf_第1页
第1页 / 共237页
零基础学python全套课后题带目录.pdf_第2页
第2页 / 共237页
零基础学python全套课后题带目录.pdf_第3页
第3页 / 共237页
零基础学python全套课后题带目录.pdf_第4页
第4页 / 共237页
零基础学python全套课后题带目录.pdf_第5页
第5页 / 共237页
点击查看更多>>
资源描述

1、Python习题目录第一课.1第二课.2第三课.4第四课.4第五课.5第六课.17第八课.21第九课.24第十课.30第十二课.35第十三课.39第十四课.44第十五课.53第十六课.55第十七课.59第十八课.64第十九课.68第20课.78第21课.88第22课.92第 23、24 课.94第25课.96第26课.101第27课.105第28课.107第29课.111第30课.118第31课.123第32课.126第33课.131第34课.137第35课.145第36课.151第37课.154第38课.162第39课.170第40课.172第41课.177第42课.182第43课.189第

2、44课.1941/237Python习题第4 5课.201第46课.208第47课.217第48课.221第49课.225第50课.2292/237Python习题第一课0.Python是什么类型的语言?Python是脚本语言脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑 听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要 原则,基于这项原则,使得脚本语言通常比C语言、C+语言或Java之类的系统 编程语言要简单容易。也让脚本语言另有一些属于脚本语言的特性:语法和结构通常比较简单 学习和使用通常比较简单 通常以容易修改程

3、序的解释作为运行方式,而不需要编译 程序的开发产能优于运行性能一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本 需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些 常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本 语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。1.IDLE是什么?IDLE是一个Python Shell,shell的意思就是外壳,基本上来说,就是一个通过键入 文本与程序交互的途径!像我们Windows那个cmd窗口,像Linux那个黑乎乎的命令 窗口,他们都是shell,利用他

4、们,我们就可以给操作系统下达命令。同样的,我们可 以利用IDLE这个shell与Python进行互动。2.print()的作用是什么?print()会在输出窗口中显示一些文本(在这一讲中,输出窗口就是IDLE shell窗口)。3.Python中表示乘法的符号是什么?Python中的乘号是*(星号)。1/237Python习题4.为什么 print(I love fishccom *5)可以正常执行,但 print(I love +5)却报错?在Python中不能把两个完全不同的东西加在一起,比如说数字和文本,正是这个原 因,print(I +5)才会报错。这就像是在说五只小甲鱼加上苍井 空会

5、是多少?一样没有多大意义,结果可能是五,可能是六,也可能是八!不过乘以 一个整数来翻倍就具有一定的意义了,前边的例子就是将I love 这个字 符串打印五次。5.如果我需要在一个字符串中嵌入一个双引号,正确的做法是?你有两个选择:可以利用反斜杠()对双引号转义:,或者用单引号引起这个字符 串。例如:I love 。6.为什么我们要使用Python3?Python2到底有什么问题?看起来很多程序员依 然都在使用Python2?确实还有相当多的程序员在使用Python2,不过Python3才是Python发展的未来,就像XP和WIN7 一样。在零基础入门学习Python的系列教程准备中,小甲鱼 发

6、觉Python3中的新特性确实很妙,很值得进行深入学习!你也不用担心,如果你了 解了 Python3,Python2的代码阅读对于你来说根本不成问题!第二课0.什么是B IF?BIF就是Built-in F unctions,内置函数。为了方便程序员快速编写脚本程序(脚本就 是要编程速度快快快!),Python提供了非常丰富的内置函数,我们只需要直接 调用即可,例如print()的功能是打印至!J屏幕,inputQ的作用是接收用户输入(注:Python3用inputQ取代了 Python2的raw_ input(),用法如有不懂请看视频讲解)。太多BIF学不过来怎么办?看不懂英文说明怎么办?P

7、ython3的资料太少怎么办?没 事,有了小甲鱼,妈妈再也不用担心我的学习了!L用课堂上小甲鱼教的方法数一数Python3提供了多少个B IF?在Python或IDLE中,输入dir(builtins)可以看到Python提供的内置方法列 表(注意,builtins前后是两个下划线哦)其中小写的就是BIF。如果想具体查看某个 BIF的功能,比如input。,可以在shell中输入help(input),就会得到这个BIF的2/237Python习题功能描述。哦,答案应该是68个,不信你自己数数看,你们肯定没有自己完成作业 就来看答案!哼丁_丁2.在 Python 看来:FishC 和fishc

8、 样吗?不一样,因为Python是一个敏感的小女孩,所以不要试图欺骗她,对Python来 说,fishc和F ishC是完全不同的两个名字,所以编程的时候一定要当心。不过Python 会帮助解决可能因此出现的问题,例如只有当标识符已经赋值后(还记得吗,小甲鱼 在课堂中说过Python的变量是不用先声明的)才能在代码中使用,未赋值的标识符 直接使用会导致运行时错误,所以你很快就可以根据经验发现此问题。3.在小甲鱼看来,Python中什么是最重要的?你赞同吗?缩进!在小甲鱼看来,缩进是Python的灵魂,缩进的严格要求使得Python的代码 显得非常精简并且有层次(小甲鱼阅读过很多大牛的代码,那个

9、乱C语言不是有国 际乱码大赛嘛)。所以在Python里对待缩进代码要十分小心,如果没有正确地缩进,代码所做的事情 可能和你的期望相去甚远(就像C语言里边括号打错了位置)。如果在正确的位置输入冒号IDLE会自动将下一行缩进!4.这节课的例子中出现了”=和”=,他们表示不同的含义,你在编程的过程中会 不小心把“二二“误写成=“吗?有没有好的办法可以解决这个问题呢?C语言的话,如果if(c=1)写成if(c=1),程序就完全不按程序员原本的目的去 执行,但在Python这里,不好意思,行不通,语法错误!Python不允许if条件中 赋值,所以if c二1:会报错!小甲鱼觉得这种做法可以非常有效的防止

10、程序员因为打炮、熬夜等问题导致粗心的 BUG,并且这类BUG杀伤力都巨大!5.你听说过“拼接“这个词吗?在一些编程语言,我们可以将两个字符串相加在一起,如:T+Love+F ishC会 得到】LoveF ishC,在Python里,这种做法叫做拼接字符串。3/237Python习题第三课0.编写程序:hello.py,要求用户输入姓名并打印“你好,姓名!”1.name=input(请输入您的姓名:)2.pr int(你好,+name+!)复制代码1.编写程序:calcpy要求用户输入工到100之间数字并判断,输入符合要求打印”你 妹好漂亮,不符合要求则打印“你大爷好丑”1.t emp=inpu

11、t(请输入1到100之间的数字:)2.num=int(t emp)3.if 1=num st r=r C:Pr o g r am FilesFishCGo o d11复制代码第四课测试题:0.请问以下代码会打印多少次我爱鱼C!1.while C:2.pr int(我爱鱼 C!,)复制代码1.请问以下代码会打印多少次我爱鱼C!4/237Python习题1.i=102.while i:3.pr int(我爱鱼 C!,)4.i=i-1复制代码2.请写出与10 cost float和str分别表示什么吗?1.你知道为什么布尔类型(bool)的T rue和F alse分别用1和0来代替吗?2.使用int

12、()将小数转换为整数,结果是向上取整还是向下取整呢?3.我们人类思维是习惯于“四舍五入”法,你有什么办法使得int()按照“四舍五5/237Python习题入”的方式取整吗?4.取得一个变量的类型,视频中介绍可以使用type()和isinstanceO,你更倾向于 使用哪个?5.Python3可以给变量命名中文名,知道为什么吗?6.【该题针对零基础的鱼油】你觉得这个系列教学有难度吗?动动手:0.针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误类型的 时候,及时提醒用户重新输入,防止程序崩溃。如果你尝试过以下做法,请举下小手:1.t emp=input(不妨猜一下小甲鱼现在心里

13、想的是哪个数字:)2.#这种想法是因为t ype(l)会返回(clas s int,如果t ype(t emp)返回结果一致说明输入是整 数。3.while t ype(t emp)!=t ype(l):4.pr int(抱歉,输入不合法,,end=)5.t emp=input(请输入一个整数:)复制代码或者可能这样:1.t emp=input(不妨猜一下小甲鱼现在心里想的是哪个数字:)2.#no t操作符的作用是将布尔类型的结果翻转:即取反的意思,no t Tr ue=Flase3.while no t isinst ance(t emp,int):4.pr int(抱歉,输入不合法,,en

14、d=)5.t emp=input(请输入一个整数:)复制代码以上方法的思路是正确的,一不过似乎忽略了一点儿:就是input()的返回值始终是字符串,所以 type(temp)永远是class str!其实有蛮多的做法可以实现的,不过就目前我们学习过的内容来看,还不足够。所以,在让大家动手完成这道题之前,小甲鱼介绍一点新东西给大家!6/237Python习题S为字符串 s.isalnumO 所有字符都是数字或者字母,为真返回T ure,否则返回F alse。s.isalphaO 所有字符都是字母,为真返回T ure,否则返回F alse。s.isdigitO 所有字符都是数字,为真返回T ure

15、,否则返回F alse。s.islower()所有字符都是小写,为真返回T ure,否则返回F alse。s.isupper()所有字符都是大写,为真返回T ure,否则返回F alse。s.istitle()所有单词都是首字母大写,为真返回T ure,否则返回F alse。s.isspaceO 所有字符都是空白字符,为真返回T ure,否则返回F alse。例如:s=I LOVE F ISHC,s.isupper()T rue好了,文字教程就到这里,大家赶紧趁热打铁,改造我们的小游戏吧!1.写一个程序,判断给定年份是否为闰年。(注意:请使用已学过的BIF进行灵活 运用)这样定义闰年的:能被4

16、整除但不能被100整除,或者能被400整除都是闰年。2.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!测试题答案:0.在Python中,int表示整型,那你还记得bool afloat和str分别表示什么吗?bool表示布尔类型 float表示浮点型 str表示字符串7/237Python习题1.你知道为什么布尔类型(bool)的T rue和F alse分别用1和0来代替吗?你可能听说过计算机是很“笨”的,究其根本是因为它只认识二进制数,所以所有的 编程语言最终都会转换成简单的二进制序列给C PU按照一定的规则解析。由于二进制只有两个数:0和1,因此用0和1来表示F a

17、lse和T rue再适合不过 T,因为不用浪费资源在转换的过程上!2.使用int()将小数转换为整数,结果是向上取整还是向下取整呢?我们可爱的小甲鱼说了,小数取整会采用比较暴力的截断方式,即向下取整。(注:5.5向上取整为6,向下取整为5)3.我们人类思维是习惯于“四舍五入”法,你有什么办法使得int()按照“四舍五 入”的方式取整吗?int()固然没那么“聪明”,但机器是死的,鱼油是活的!5.4“四舍五入”结果为:5,int(5.4+0.5)=55.6“四舍五入”结果为:6,int(5.6+0.5)=6大家看明白了吗?4.取得一个变量的类型,视频中介绍可以使用type()和isinstanc

18、eO,你更倾向 于使用哪个?建议使用isinstanceO,因为它的返回结果比较直接,另外typeO其实并没有你想 象的那么简单,我们后边会讲到。5.Python3可以给变量命名中文名,知道为什么吗?Pyhton3源码文件默认使用utf-8编码(支持中文),这就使得以下代码是合法的:小甲鱼=我爱你 print(小甲鱼)我爱你6.【该题针对零基础的鱼油】你觉得这个系列教学有难度吗?8/237Python习题如果有不懂的问题,请在此处提问:如tp有不 73T.html另外需要小甲鱼在视频讲解的方面做哪方面改进请回帖告之!动动手答案:0.针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入

19、错误类型的 时候,及时提醒用户重新输入,防止程序崩溃。需要注意的地方在代码中已经注释!1.impo r t r ando m2.t imes=33.secr et=r ando m.r andint(110)4.pr int(-我爱鱼C工作室-)5.g uess=06.pr int(不妨猜一下小甲鱼现在心里想的是哪个数字:,end=)7.while(g uess!=secr et)and(t imes 0):8.t emp=input()9.while no t t emp.isdig it():10.t emp=input(抱歉,您的输入有误,请输入一个整数:)11.g uess=int(t

20、 emp)12.t imes=t imes-1#用户每输入一次,可用机会就-113.if g uess=secr et:14.pr int(我草,你是小甲鱼心里的蛔虫吗?!)15.pr int(哼,猜中了也没有奖励!)16.else:17.if g uess secr et:18.pr int(哥,大了大了)19.else:20.pr int(嘿,小了,小了)21.if t imes 0:9/237Python习题22.pr int(再试一次吧:,end=)23.else:24.pr int。,机会用光咯T_T)25.pr int(游戏结束,不玩啦A_A)复制代码1.写一个程序,判断给定年份是

21、否为闰年。1.t emp=input(请输入一个年份:)2.while no t t emp.is d ig it():3.t emp=input(抱歉,您的输入有误,请输入一个整数:)4.5.year=int(t emp)6.if year/400=int(year/400):7.pr int(t emp+是闰年!)8.else:9.if(year/4=int(year/4)and(year/100!=int(year/100):10.pr int(t emp+是闰年!)11.else:12.pr int(t emp+不是闰年!)复制代码2.尝试写代码实现以下截图功能:10/237Pytho

22、n习题3.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!测试题答案:0.请问以下代码会打印多少次“我爱鱼C!”死循环,会一直打印我爱鱼C!(嗯,这也算是永远支持鱼C的方法之一),直到 崩溃或者用户按下快捷键C T RL+C(强制结束)造成死循环的原因是while后边的条件永远为真(T rue),在Python看来,只有以下 内容会被看作假(注意冒号括号里边啥都没有,连空格都不要有!):F alse None 00 11/237Python习题其他一切都被解释为真!不妨试试:1.while:2.pr int(进入循环,)3.pr int(退出

23、循环)复制代码或者1.while Flase:2.pr int(进入循环,)3.pr int(退出循环,)复制代码或者1.while 0:2.pr int(进入循环,)3.pr int(退出循环,)复制代码1.请问以下代码会打印多少次“我爱鱼C!”会打印10次。2.请写出与10 cost 50等价的表达式(10 cost)and(cost print(I love fishc);print(very much!)12/237Python习题4.Python3中,一个语句可以分成多行书写吗?可以,一行过长的语句可以使用反斜杠或者括号分解成儿行,不妨试试:1.3 4 and 2.1 (3 4 an

24、d2.1 0):11.t emp=input()12.g uess=int(t emp)13.t imes=t imes-1#用户每输入一次,可用机会就-114.if g uess=secr et:15.pr int(我草,你是小甲鱼心里的蛔虫吗?!)16.pr int(哼,猜中了也没有奖励!)17.else:18.if g uess secr et:19.pr int(哥,大了大了)20.else:21.pr int(嘿,小了,小了-)22.if t imes 0:23.pr int(再试一次吧:,end=)24.else:25.pr int(机会用光咯T_T)16/237Python习题2

25、6.pr int(游戏结束,不玩啦八二)复制代码1.尝试写代码实现以下截图功能:1.t emp=input(请输入一个整数:)2.number=int(t emp)3.i=14.while number:5.pr int(i)6.i=i+17.number=number-1复制代码2,尝试写代码实现以下截图功能:1.t emp=input(请输入一个整数:)2.number=int(t emp)3.while number:4.i=number-15.while i:6.pr int(,end=)7.i=i-18.j=number9.while j:10.pr int C*,end=)11.j

26、=j-112.pr int()13.number=number-1复制代码第六课17/237Python习题测试题:0.Python的floor除法现在使用“”实现,那3.0/2.0您目测会显示什么 内容呢?1.a b c事实上是等于?2.不使用IDLE,你可以轻松说出5*-2的值吗?3.如何简单判断一个数是奇数还是偶数?4.请用最快速度说出答案:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 95.还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用 什么方法可以“委曲求全”代替“”的功能呢?动动手:。.请写一个

27、程序打印出0100所有的奇数。1.我们说过现在的Python可以计算很大很大的数据,但是.真正的大数据计算可是要靠刚刚的硬件滴,不妨写一个小代码,让你的计算机为之崩溃?2.爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5 阶;只有每步上7阶,最后刚好一阶也不剩。(小甲鱼温馨提示:步子太大真的容易扯着蛋)题目:请编程求解该阶梯至少有多少阶?3.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!18/237Python习题测试题答案:0.Pytho

28、n的floor除法现在使用“”实现,那3.0/2.0您目测会显示什么 内容呢?如果回答是L5那么很遗憾,您受到C语言的影响比较大,Python这里会义无反顾 地执行floor除法原则,答案是:1.01.a b c事实上是等于?(a b)and(b and or我们按照优先级给它们加上括号:(not 1)or(0 and 1)or(3 and 4)or(5 and 6)or(7 and 8 and 9)-0 or 0 or 4 or 6 or 9二二 4 为啥是4?19/237Python习题大家还记得第四讲作业提到的“短路逻辑”吗?3 and 4=4,而3 0r 4=3。所以答案是:4温馨提示

29、:为了更好的表达你的程序,小甲鱼再次呼吁有些括号还是不能省下的,毕 竟不是所有程序员都跟你一样都将优先级烂透于心的。5.还记得我们上节课那个求闰年的作业吗?如果还没有学到“求余”操作,还记得用 什么方法可以“委曲求全”代替“”的功能呢?因为上节课我们还没有教大家“求余”的操作,所以小甲鱼使用了“if year/4 00=int(year/4 00)w这样的方式来“委曲求全”。动动手答案:0,请写一个程序打印出0100所有的奇数。while i=100:if i%pr int(i,end=)复制代码1.我们说过现在的Python可以计算很大很大的数据,但是真正的大数据计算 可是要靠刚刚的硬件滴,

30、不妨写一个小代码,让你的计算机为之崩溃?print(2*2*32)#一般很多机子都会在一会儿之后:Memory Overflow,内存不够用。#设计到幕操作,结果都是惊人滴。2.题目:请编程求解该阶梯至少有多少阶?1.x=720/237Python习题2.i=13.f lag=04.5.while i=100:6.if(x%2=1)and(x%3=2)and(x%5=4)and(x%6=5):7.f lag=18.else:9.x=7*(i+1)#根据题意,x一定是7的整数倍,所以每次乘以710.i+=111.12.if f lag=1:13.pr int(阶梯数是:,,x)14.else:1

31、5.pr int在程序限定的范围内找不到答案!,)复制代码第八课0.if not(money 100):上边这行代码相当于?1.assert的作用是什么?2.假设有x=1,y二2,z=3,请问如何快速将三个变量的值互相交换?3.猜猜(x y and x or y)0实现什么样的功能?4.你听说过成员资格运算符吗?动动手:0.视频中小甲鱼使用if elif else在大多数情况下效率要比全部使用if要高,但 根据一般的统计规律,一个班的成绩一般服从正态分布,也就是说平均成绩一般集中 在7080分之间,因此根据统计规律,我们还可以改进下程序以提高效率。题目备忘:按照100分制,90分以上成绩为A,

32、80到90为B,60到80为C,60以下 为D,写一个程序,当用户输入分数,自动转换为ABC D的形式打印。21/237Python习题1.Python的作者在很长一段时间不肯加入三元操作符就是怕跟C语言一样搞出国际 乱码大赛,蛋疼的复杂度让初学者望而生畏,不过,如果你一旦搞清楚了三元操作符 的使用技巧,或许一些比较复杂的问题反而迎刃而解。请将以下代码修改为三元操作符实现:1.X,y,z=6,5,42.if x y:3.small=x4.if z small:5.small=z6.elif y z:7.small=y8.else:9.small=z复制代码2.请写下这一节课你学习到的内容:格式

33、不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!测试题答案:0.if not(money=100:1.assert的作用是什么?assert这个关键字我们称之为“断言”,当这个关键字后边的条件为假的时候,程序 自动崩溃并抛出AssertionError的异常。什么情况下我们会需要这样的代码呢?当我们在测试程序的时候就很好用,因为与其 让错误的条件导致程序今后莫名其妙地崩溃,不如在错误条件出现的那一瞬间我们实 现“自爆”O22/237Python习题一般来说我们可以用T a再程序中置入检查点,当需要确保程序中的某个条件一定为真 才能让程序正常工作的话,assert关键字就非常有

34、用了。2.假设有x=1,y二2,z=3,请问如何快速将三个变量的值互相交换?x,y,z=z,y,x3.猜猜(x name=小甲鱼,2.鱼,in name3.Tr ue4.肥鱼in name5.False复制代码当下节课我们讲解for语句的时候,你看到in会不会就有了更深入的理解?!动动手答案:0.视频中小甲鱼使用ifelifelse在大多数情况下效率要比全部使用if要高,但根 据一般的统计规律,一个班的成绩一般服从正态分布,也就是说平均成绩一般集中在 70-80分之间,因此根据统计规律,我们还可以改进下程序以提高效率。1.sco r e=int(input(请输入一个分数:,)23/237Py

35、thon习题2.if 80 sco r e=60:3.pr int(C)4.elif 90 sco r e=80:5.pr int(B)6.elif 60 sco r e=0:7.pr int(D)8.elif 100=sco r e=90:9.pr int(A)10.else:11.pr int(输入错误!,)复制代码1.Python的作者在很长一段时间不肯加入三元操作符就是怕跟C语言一样搞出国 际乱码大赛,蛋疼的复杂度让初学者望而生畏,不过,如果你一旦搞清楚了三元操作 符的使用技巧,或许一些比较复杂的问题反而迎刃而解。1.small=x if(x y and x z)else(y if y

36、 z else z)复制代码第九课0.下面的循环会打印多少次叮Love F ishC?1.f o r i in r ang e(0?10,2):2.pr int(I Lo ve FishC)复制代码1.下面的循环会打印多少次叮Love F ishC?1.f o r i in 5:2.pr int(I Lo ve FishC)复制代码2,回顾一下break和continue在循环中起到的作用?3.请谈下你对列表的理解?4.请问range(lO)生成哪些数?24/237Python习题5.目测以下程序会打印什么?1.while Tr ue:2.while Tr ue:3.br eak4.pr in

37、t(l)5.pr int(2)6.br eak7.pr int(3)复制代码6.什么情况下我们要使循环永远为真?7.【学会提高代码的效率】你的觉得以下代码效率方面怎样?有没有办法可以大幅度 改进(仍然使用while)?1.i=02.st r ing=1ILo veFishC.co m13.while i len(s t r ing):4.pr int(i)5.i+=1复制代码动动手:细节决定成败,看答案前记得自己先敲代码!0.设计一个验证用户密码程序,用户只有三次机会输入错误,不过如果用户输入的内 容中包含“*”则不计算在内。程序演示如图:25/237Python习题1.编写一个程序,求100

38、999之间的所有水仙花数。如果一个3位数等于其各位数字的立方和,则称这个数为水仙花数。例如:153=1A3+5人3+3人3,因此153就是一个水仙花数。2.三色球问题有红、黄、蓝三种颜色的求,其中红球3个,黄球3个,绿球6个。先将这12个 球混合放在一个盒子中,从中任意摸出8个球,编程计算摸出球的各种颜色搭配。3.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!26/237Python习题测试题答案:0.下面的循环会打印多少次1 Love FishC?1.f o r i in r ang e(0?10,2):2.pr int(I Lo ve

39、FishC)复制代码5次,因为从0开始,到10结束,步进为201.下面的循环会打印多少次1 Love FishC?1.f o r i in 5:2.pr int(I Lo ve FishC)复制代码会报错,上节课的课后习题我们提到了 in是成员资格运算符,而不是像C语言那 样去使用for语法。Python的for更像脚本语言的foreacho2.回顾一下break和continue在循环中起到的作用break语句的作用是终止当前循环,跳出循环体。continue语句的作用是终止本轮循环并开始下一轮循环(这里要注意的是:在开始下 一轮循环之前,会先测试循环条件)。3.请谈下你对列表的理解嗯,有些

40、知识点需要自己总结才能加固,下节课小甲鱼将跟大家畅谈一个打了激素的 数组:列表,不容错过哦人一人4.请问range。)生成哪些数?会生成 range(Oz 10),list(range(O,10)转换成列表是:0,1,2,3,4,5,6,7,8,9,注意不包含10哦。5.目测以下程序会打印什么?1.while Tr ue:2.while Tr ue:27/237Python习题3.br eak4.pr int(l)5.pr int(2)6.br eak7.pr int(3)复制代码会打印:23因为break只能跳出一层循环,记住咯!6.什么情况下我们要使循环永远为真?while T ure:循

41、环体同样用于游戏实现,因为游戏只要运行着,就需要时刻接收用户输入,因此使用永远 为真确保游戏在线。操作系统也是同样的道理,时刻待命,操作系统永远为真的这 个循环叫做消息循环。另外,许多通讯服务器的客户端/服务器系统也是通过这样的原 理来工作的。所以永远为真虽然是死循环,但不一定是坏事,再说了,我们可以随时用break来 跳出循环!7.【学会提高代码的效率】你的觉得以下代码效率方面怎样?有没有办法可以大幅度 改进(仍然使用while)?1.i=02.st r ing=1ILo veFishC.co m13.while i len(s t r ing):4.pr int(i)5.i+=1复制代码这

42、段代码之所以效率比较低是因为每次循环都需要调用一次len()函数(我们还没 有学到函数的概念,小甲鱼这里为零基础的朋友形象的解释下:就像你打游戏打得正28/237Python习题HIGH的时候,老妈让你去买盐你有两种选择,一次买一包,一天去买五次,或者 一次性买五包回来,老妈要就直接给她。)1.i=02.st r ing=ILo veFishC.co m3.leng t h=len(s t r ing)4.while i mix=小甲鱼3.14,1,2,31.向列表增加元素有哪些方法?这节课我们教过大家三种方法想列表增加元素,分别是:append。、extend()和insert()o2.ap

43、pendQ方法和extend()方法都是向列表的末尾增加元素,请问他们有什么 区别?32/237Python习题append()方法是将参数作为一个元素增加到列表的末尾。extend()方法则是将参数作为一个列表去扩展列表的末尾。请看以下示例:1.name=F,i,s,h2.name.append(C)3.name4.F,i,s,h,C 5.name.ex t end name7.F,i,s,h,C,c8.name.append(o,m)9.name10.F,i,s,h,C,c,o,m复制代码3.member.append(竹林小溪Crazy 迷恋)和 member.extend(竹林小溪 C

44、razy迷恋)实现的效果一样吗?不一样,因为怕大家没有仔细看上一题的示例,所以不懂的请看上一题解释。4.有列表name=FJiJhJC,如果小甲鱼想要在元素T和h之间插入元 素s,应该使用什么方法来插入?name.insert(2,s)动动手答案:0.自己动手试试看,并分析在这种情况下,向列表添加数据应当采用哪种方法比较 好?假设给定以下列表:33/237Python习题member=小甲鱼,黑夜/迷途,怡静,秋舞斜阳口要求将列表修改为:member=小甲鱼,88,黑夜,90,迷途85,怡静,90,秋舞斜阳88方法一:使用insertQ和appendQ方法修改列表。方法二:重新创建一个同名字的

45、列表覆盖。解答:方法一:1.member.inser t(l,88)2.member.inser t(3,90)3.member.inser t(5,85)4.member.inser t(7,90)5.member.append(88)复制代码方法二:1.member=小甲鱼,88,黑夜,90,迷途,85,怡静,90,秋舞斜阳,88复制代码对于这种情况,明显是第二种方法看起来要好一些嘛。不过对于大型的列表,第一种方法可能更合适,所以我们说永远没有最好的,只有最 合适的。1.利用for循环打印上边member列表中的每个内容1.member=小甲鱼,88,黑夜,90,迷途,85,怡静,90,秋

46、舞斜阳,882.f o r each in member:3.pr int(each)复制代码34/237Python习题2.上一题打印的样式不是很好,能不能修改一下代码打印成下图的样式呢?【请至少 使用两种方法实现】1.方法一:2.co unt=03.leng t h=len(member)4.while co unt o ld=1,2,3,4,52.new=o ld3.o ld=64.pr int(new)复制代码如果不上机操作,你觉得会打印什么内容?第十二课1.请问如何将下边这个列表的小甲鱼修改为小觥鱼?1.lis t l=1,1,2,小甲鱼,3,5,8,13,18复制代码2.要对一个列

47、表进行顺序排序,请问使用什么方法?3.要对一个列表进行逆序排序,请问使用什么方法?35/237Python习题4.列表还有两个内置方法没给大家介绍,不过聪明的你应该可以自己摸索使用的门道 吧:copy()和 clear()5.你有听说过列表推导式或列表解析吗?没听过?!没关系,我们现场来学习一下吧,看表达式:1.i*i f o r i in r ang e(10)复制代码你觉得会打印什么内容?1.i*i f o r i in r ang e(10)2.0,1,4,9,16,25,36,49,64,81 复制代码居然分别打印了。到9各个数的平方,然后还放在列表里边了有木有?!列表推导式(List

48、 comprehensions)也叫列表解析,灵感取自函数式编程语言 Haskel 10 T a是一个非常有用和灵活的工具,可以用来动态的创建列表,语法如:有关A的表达式for A in B例如1.lis t l=x*2 f o r x in r ang e(10)2.lis t l3.0,1,4,9,16,25,36,49,64,81 复制代码相当于1.lis t l=2.f o r x in r ang e(10):3.list l.append(x*2)复制代码问题:请先在IDLE中获得下边列表的结果,并按照上方例子把列表推导式还原出来。1.lis t l=(x,y)f o r x in

49、 r ang e(10)f o r y in r ang e(10)if x%2=0 if y%2!=0 复制代码36/237Python习题6.活学活用:请使用列表推导式补充被小甲鱼不小心涂掉的部分7.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!测试题答案:0.注意,这道题跟上节课的那道题有点儿不同,回答完请上机实验或参考答案。37/237Python习题1.o ld=1,2,3,4,52.new=o ld3.o ld=64.pr int(new)复制代码会打印:1,2,3,4,5如有不理解的朋友请看上一讲课后作业的详细答案。1.请问如

50、何将下边这个列表的小甲鱼修改为小鳏鱼?1.lis t l=1,1,2,小甲鱼,3,5,8,13,182.lis t ll20=小觥鱼复制代码2.要对一个列表进行顺序排序,请问使用什么方法?1.列表名.so r t()复制代码3.要对一个列表进行逆序排序,请问使用什么方法?1.列表名.s o r t()2.列表名.r ever se()复制代码或者1.列表名.so r t(r ever se=Tr ue)复制代码4.列表还有两个内置方法没给大家介绍,不过聪明的你应该可以自己摸索使用的门道 吧:copy。和 dear()copy()方法跟使用切片拷贝是一样的:1.lis t 2=lis t l.c

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 考试专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服