您好,欢迎访问三七文档
当前位置:首页 > 财经/贸易 > 资产评估/会计 > [全套55讲]-鱼C论坛小甲鱼Python课后题
第1课0.Python是什么类型的语言?Python是脚本语言脚本语言(Scriptinglanguage)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语言的重要原则,基于这项原则,使得脚本语言通常比C语言、C++语言或Java之类的系统编程语言要简单容易。也让脚本语言另有一些属于脚本语言的特性:语法和结构通常比较简单学习和使用通常比较简单通常以容易修改程序的“解释”作为运行方式,而不需要“编译”程序的开发产能优于运行性能一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个Shell脚本主要由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更复杂的程序。1.IDLE是什么?IDLE是一个PythonShell,shell的意思就是“外壳”,基本上来说,就是一个通过键入文本与程序交互的途径!像我们Windows那个cmd窗口,像Linux那个黑乎乎的命令窗口,他们都是shell,利用他们,我们就可以给操作系统下达命令。同样的,我们可以利用IDLE这个shell与Python进行互动。2.print()的作用是什么?print()会在输出窗口中显示一些文本(在这一讲中,输出窗口就是IDLEshell窗口)。3.Python中表示乘法的符号是什么?Python中的乘号是*(星号)。4.为什么print('Ilovefishc.com'*5)可以正常执行,但print('Ilovefishc.com'+5)却报错?在Python中不能把两个完全不同的东西加在一起,比如说数字和文本,正是这个原因,print('Ilovefishc.com'+5)才会报错。这就像是在说“五只小甲鱼加上苍井空会是多少?”一样没有多大意义,结果可能是五,可能是六,也可能是八!不过乘以一个整数来翻倍就具有一定的意义了,前边的例子就是将Ilovefishc.com这个字符串打印五次。5.如果我需要在一个字符串中嵌入一个双引号,正确的做法是?你有两个选择:可以利用反斜杠(\)对双引号转义:\,或者用单引号引起这个字符串。例如:'Ilovefishc.com'。6.为什么我们要使用Python3?Python2到底有什么问题?看起来很多程序员依然都在使用Python2?确实还有相当多的程序员在使用Python2,不过Python3才是Python发展的未来,就像XP和WIN7一样。在《零基础入门学习Python》的系列教程准备中,小甲鱼发觉Python3中的新特性确实很妙,很值得进行深入学习!你也不用担心,如果你了解了Python3,Python2的代码阅读对于你来说根本不成问题!第2课0.什么是BIF?BIF就是Built-inFunctions,内置函数。为了方便程序员快速编写脚本程序(脚本就是要编程速度快快快!!!),Python提供了非常丰富的内置函数,我们只需要直接调用即可,例如print()的功能是“打印到屏幕”,input()的作用是接收用户输入(注:Python3用input()取代了Python2的raw_input(),用法如有不懂请看视频讲解)。太多BIF学不过来怎么办?看不懂英文说明怎么办?Python3的资料太少怎么办?没事,有了小甲鱼,妈妈再也不用担心我的学习了!1.用课堂上小甲鱼教的方法数一数Python3提供了多少个BIF?在Python或IDLE中,输入dir(__builtins__)可以看到Python提供的内置方法列表(注意,builtins前后是两个下划线哦)其中小写的就是BIF。如果想具体查看某个BIF的功能,比如input(),可以在shell中输入help(input),就会得到这个BIF的功能描述。哦,答案应该是68个,不信你自己数数看,你们肯定没有自己完成作业就来看答案!哼~T_T2.在Python看来:'FishC'和'fishc'一样吗?不一样,因为Python是一个“敏感的小女孩”,所以不要试图欺骗她,对Python来说,fishc和FishC是完全不同的两个名字,所以编程的时候一定要当心。不过Python会帮助解决可能因此出现的问题,例如只有当标识符已经赋值后(还记得吗,小甲鱼在课堂中说过Python的变量是不用先声明的)才能在代码中使用,未赋值的标识符直接使用会导致运行时错误,所以你很快就可以根据经验发现此问题。3.在小甲鱼看来,Python中什么是最重要的?你赞同吗?缩进!在小甲鱼看来,缩进是Python的灵魂,缩进的严格要求使得Python的代码显得非常精简并且有层次(小甲鱼阅读过很多大牛的代码,那个乱......C语言不是有国际乱码大赛嘛......)。所以在Python里对待缩进代码要十分小心,如果没有正确地缩进,代码所做的事情可能和你的期望相去甚远(就像C语言里边括号打错了位置)。如果在正确的位置输入冒号“:”,IDLE会自动将下一行缩进!4.这节课的例子中出现了“=”和“==”,他们表示不同的含义,你在编程的过程中会不小心把“==”误写成“=”吗?有没有好的办法可以解决这个问题呢?C语言的话,如果if(c==1)写成if(c=1),程序就完全不按程序员原本的目的去执行,但在Python这里,不好意思,行不通,语法错误!Python不允许if条件中赋值,所以ifc=1:会报错!小甲鱼觉得这种做法可以非常有效的防止程序员因为打炮、熬夜等问题导致粗心的BUG,并且这类BUG杀伤力都巨大!5.你听说过“拼接”这个词吗?在一些编程语言,我们可以将两个字符串“相加”在一起,如:'I'+'Love'+'FishC'会得到'ILoveFishC',在Python里,这种做法叫做拼接字符串。第3课0.编写程序:hello.py,要求用户输入姓名并打印“你好,姓名!”1.name=input(请输入您的姓名:)2.print('你好,'+name+'!')1.编写程序:calc.py要求用户输入1到100之间数字并判断,输入符合要求打印“你妹好漂亮”,不符合要求则打印“你大爷好丑”1.temp=input(请输入1到100之间的数字:)2.num=int(temp)3.if1=num=100:4.print('你妹好漂亮^_^')5.else:6.print('你大爷好丑T_T')5.如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理?1.str=r'C:\ProgramFiles\FishC\Good''\\'第4课测试题:0.请问以下代码会打印多少次“我爱鱼C!”1.while'C':2.print('我爱鱼C!')1.请问以下代码会打印多少次“我爱鱼C!”1.i=102.whilei:3.print('我爱鱼C!')4.i=i-12.请写出与10cost50等价的表达式3.Python3中,一行可以书写多个语句吗?4.Python3中,一个语句可以分成多行书写吗?5.请问Python的and操作符和C语言的&&操作符有何不同?【该题针对有C或C++基础的朋友】6.听说过“短路逻辑(short-circuitlogic)”吗?动动手:0.完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。1.尝试写代码实现以下截图功能:2.尝试写代码实现以下截图功能:3.请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!回复您的答案即可查看参考答案!测试题答案:0.请问以下代码会打印多少次“我爱鱼C!”死循环,会一直打印“我爱鱼C!”(嗯,这也算是永远支持鱼C的方法之一),直到崩溃或者用户按下快捷键CTRL+C(强制结束)造成死循环的原因是while后边的条件永远为真(True),在Python看来,只有以下内容会被看作假(注意冒号括号里边啥都没有,连空格都不要有!):FalseNone0''()[]{}其他一切都被解释为真!不妨试试:1.while'':2.print('进入循环')3.print('退出循环')复制代码或者1.whileFalse:2.print('进入循环')3.print('退出循环')复制代码或者1.while0:2.print('进入循环')3.print('退出循环')复制代码1.请问以下代码会打印多少次“我爱鱼C!”会打印10次。2.请写出与10cost50等价的表达式(10cost)and(cost50)3.Python3中,一行可以书写多个语句吗?可以,语句之间用分号隔开即可,不妨试试:print('Ilovefishc');print('verymuch!')4.Python3中,一个语句可以分成多行书写吗?可以,一行过长的语句可以使用反斜杠或者括号分解成几行,不妨试试:1.34and\2.12复制代码或者1.(34and2.12)复制代码5.【该题针对有C或C++基础的朋友】请问Python的and操作符和C语言的&&操作符有何不同?有图有真相(C\C++VSPython):VS6.听说过“短路逻辑(short-circuitlogic)”吗?逻辑操作符有个有趣的特性:在不需要求值的时候不进行操作。这么说可能比较“高深”,举个例子,表达式xandy,需要x和y两个变量同时为真(True)的时候,结果才为真。因此,如果当x变量得知是假(False)的时候,表达式就会立刻返回False,而不用去管y变量的值。这种行为被称为短路逻辑(short-circuitlogic)或者惰性求值(lazyevaluation),这种行为同样也应用与or操作符,这个后边的课程小甲鱼会讲到,不急。实际上,Python的做法是如果x为假,表达式会返回x的值(0),否则它就会返回y的值(例子参考楼上那题)。动动手答案:0.完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。需要注意的地方在代码中已经注释!1.importrandom2.times=33.secret=random.randint(1,10)4.print('------------------我爱鱼C工作室------------------')5.#这里先给guess赋值(赋一个绝对不等于secret的值)6.guess=07.#print()默认是打印完字符串会自动添加一个换行符,end=参数告诉print()用空格代替换行8.#嗯,小甲鱼觉得富有创意的你应该会尝试用end=JJ?9.print(不妨猜一下小甲鱼现在心里想的是哪个数字:,end=)10.while(guess!=secret)and(times0):11.temp=input()12.guess=int(temp)13.times=times-1#用户每输入一次,可用机会就-114.ifguess==secret:15.print(我草,你是小甲鱼心里的蛔虫吗?!)16.print(哼,猜中了也没有奖励!)17.else:18.ifguesssecret:19.print(哥,大了大了~~~)20.else:21.print(嘿,小了,小了~~~)22.iftimes0:23.print(再试一次吧:,end=)24.else:25.print(机会用光咯T_T)26.print(游戏结束,不玩啦^_^)复制代码1.尝试写代码实现以下截图功能:1.temp=input('请输入一个整数:')2.number=int(temp)3.i=14.whilenumber:5.print(i)6.i=i+17.number=number-1复制代码2.尝试写代码实现以下截图功能:1.temp=input('请输入一个整数:')2.nu
本文标题:[全套55讲]-鱼C论坛小甲鱼Python课后题
链接地址:https://www.777doc.com/doc-1223637 .html