logo资料库

小甲鱼Python课后习题.doc

第1页 / 共254页
第2页 / 共254页
第3页 / 共254页
第4页 / 共254页
第5页 / 共254页
第6页 / 共254页
第7页 / 共254页
第8页 / 共254页
资料共254页,剩余部分请下载后查看
第1课
第2课
第3课
第4课
第5课
第6课
第7课
第8课
第9课
第10课
第11课
第12课
第13课
第14课
第15课
第16课
第16课
第17课
第18课
第19课
第20课
第21课
第22课
第23、24课
第25课
第26课
第27课
第28课
第29课
第30课
第31课
第32课
第33课
第34课
第35课
第36课
第37课
第38课
第39课
第41课
第42课
第44课
第45课
第46课
第47课
第48课
第49课
第50课
第 1 课 0. Python 是什么类型的语言? Python 是脚本语言 脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让 电脑听命行事的程序。以简单的方式快速完成某些复杂的事情通常是创造脚本语 言的重要原则,基于这项原则,使得脚本语言通常比 C 语言、C++语言 或 Java 之类的系统编程语言要简单容易。 也让脚本语言另有一些属于脚本语言的特性:  语法和结构通常比较简单  学习和使用通常比较简单  通常以容易修改程序的“解释”作为运行方式,而不需要“编译”  程序的开发产能优于运行性能 一个脚本可以使得本来要用键盘进行的相互式操作自动化。一个 Shell 脚本主要 由原本需要在命令行输入的命令组成,或在一个文本编辑器中,用户可以使用脚 本来把一些常用的操作组合成一组串行。主要用来书写这种脚本的语言叫做脚本 语言。很多脚本语言实际上已经超过简单的用户命令串行的指令,还可以编写更 复杂的程序。 1. IDLE 是什么? IDLE 是一个 Python Shell,shell 的意思就是“外壳”,基本上来说,就是一个通过 键入文本与程序交互的途径!像我们 Windows 那个 cmd 窗口,像 Linux 那个黑 乎乎的命令窗口,他们都是 shell,利用他们,我们就可以给操作系统下达命令。 同样的,我们可以利用 IDLE 这个 shell 与 Python 进行互动。 2. print() 的作用是什么? print() 会在输出窗口中显示一些文本(在这一讲中,输出窗口就是 IDLE shell 窗口)。 3. Python 中表示乘法的符号是什么? Python 中的乘号是*(星号)。
4. 为什么 >>>print('I love fishc.com ' * 5) 可以正常执行, 但 >>>print('I love fishc.com ' + 5) 却报错? 在 Python 中不能把两个完全不同的东西加在一起,比如说数字和文本,正是这 个原因,>>>print('I love fishc.com ' + 5) 才会报错。这就像是在说“五只小甲 鱼加上苍井空会是多少?”一样没有多大意义,结果可能是五,可能是六,也可 能是八!不过乘以一个整数来翻倍就具有一定的意义了,前边的例子就是将 "I love fishc.com" 这个字符串打印五次。 5. 如果我需要在一个字符串中嵌入一个双引号,正确的做法是? 你有两个选择:可以利用反斜杠(\)对双引号转义:\",或者用单引号引起这 个字符串。例如:' I l"o"ve fishc.com '。 6. 为什么我们要使用 Python3?Python2 到底有什么问题?看起来很多程序 员依然都在使用 Python2? 确实还有相当多的程序员在使用 Python2,不过 Python3 才是 Python 发展的 未来,就像 XP 和 WIN7 一样。在《零基础入门学习 Python》的系列教程准备 中,小甲鱼发觉 Python3 中的新特性确实很妙,很值得进行深入学习!你也不 用担心,如果你了解了 Python3,Python2 的代码阅读对于你来说根本不成问 题!
第 2 课 0. 什么是 BIF? BIF 就是 Built-in Functions,内置函数。为了方便程序员快速编写脚本程序(脚 本就是要编程速度快快快!!!),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_T 2. 在 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 条件中赋值,所以 if c = 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. if 1 <= num <= 100: 4. print('你妹好漂亮^_^') 5. else: 6. print('你大爷好丑 T_T') 复制代码 5. 如果非要在原始字符串结尾输入反斜杠,可以如何灵活处理? 1. >>>str = r'C:\Program Files\FishC\Good''\\' 复制代码
第 4 课 测试题: 0. 请问以下代码会打印多少次“我爱鱼 C!” 1. while 'C': 2. print('我爱鱼 C!') 复制代码 1. 请问以下代码会打印多少次“我爱鱼 C!” 1. i = 10 2. while i: 3. 4. print('我爱鱼 C!') i = i - 1 复制代码 2. 请写出与 10 < cost < 50 等价的表达式 3. Python3 中,一行可以书写多个语句吗? 4. Python3 中,一个语句可以分成多行书写吗? 5. 请问 Python 的 and 操作符 和 C 语言的 && 操作符 有何不同?【该题针对 有 C 或 C++基础的朋友】 6. 听说过“短路逻辑(short-circuit logic)”吗? 动动手: 0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答 案均退出循环)并改进视频中小甲鱼的代码。 1. 尝试写代码实现以下截图功能:
第 5 课 测试题: 0. 在 Python 中,int 表示整型,那你还记得 bool、float 和 str 分别表示 什么吗? 1. 你知道为什么布尔类型(bool)的 True 和 False 分别用 1 和 0 来代替 吗? 2. 使用 int() 将小数转换为整数,结果是向上取整还是向下取整呢? 3. 我们人类思维是习惯于“四舍五入”法,你有什么办法使得 int() 按照“四 舍五入”的方式取整吗? 4. 取得一个变量的类型,视频中介绍可以使用 type() 和 isinstance(),你更 倾向于使用哪个? 5. Python3 可以给变量命名中文名,知道为什么吗? 6. 【该题针对零基础的鱼油】你觉得这个系列教学有难度吗? 动动手: 0. 针对视频中小甲鱼提到的小漏洞,再次改进我们的小游戏:当用户输入错误 类型的时候,及时提醒用户重新输入,防止程序崩溃。 如果你尝试过以下做法,请举下小手: 1. temp = input("不妨猜一下小甲鱼现在心里想的是哪个数字:") 2. # 这种想法是因为 type(1)会返回,如果 type(temp)返回结果一致说明 输入是整数。 3. while type(temp) != type(1): 4. 5. 复制代码 print("抱歉,输入不合法,", end='') temp = input("请输入一个整数:")
分享到:
收藏