全套55讲 鱼C论坛小甲鱼Python课后题
更新时间:2023-12-13 08:24:01 阅读量: 教育文库 文档下载
- 全套550推荐度:
- 相关推荐
第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) 才会报错。这就像是在说“五只小甲鱼加上苍井空会是多少?”一样没有多大意义,结果可能是五,可能是六,也可能是八!不过乘以一个整数来翻倍就具有一定的意义了,前边的例子就是将 \这个字符串打印五次。
5. 如果我需要在一个字符串中嵌入一个双引号,正确的做法是?
你有两个选择:可以利用反斜杠(\\)对双引号转义:\\\,或者用单引号引起这个字符串。例如:' I l\。
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 杀伤力都巨大!
1. 请问以下代码会打印多少次“我爱鱼C!” 会打印 10 次。
2. 请写出与 10 < cost < 50 等价的表达式 (10 < cost) and (cost < 50)
3. Python3 中,一行可以书写多个语句吗? 可以,语句之间用分号隔开即可,不妨试试: >>> print('I love fishc');print('very much!')
4. Python3 中,一个语句可以分成多行书写吗?
可以,一行过长的语句可以使用反斜杠或者括号分解成几行,不妨试试:
1. >>> 3 > 4 and \\ 2. 1 < 2
复制代码
或者
1. >>> ( 3 > 4 and 2. 1 < 2 )
复制代码
5. 【该题针对有C或C++基础的朋友】请问Python的 and 操作符 和C语言的 && 操作符 有何不同?
有图有真相(C\\C++ VS Python):
VS
6. 听说过“短路逻辑(short-circuit logic)”吗?
逻辑操作符有个有趣的特性:在不需要求值的时候不进行操作。这么说可能比较“高深”,举个例子,表达式 x and y,需要 x 和 y 两个变量同时为真(True)的时候,结果才为真。因此,如果当 x 变量得知是假(False)的时候,表达式就会立刻返回 False,而不用去管 y 变
量的值。
这种行为被称为短路逻辑(short-circuit logic)或者惰性求值(lazy evaluation),这种行为同样也应用与 or 操作符,这个后边的课程小甲鱼会讲到,不急。
实际上,Python 的做法是如果 x 为假,表达式会返回 x 的值(0),否则它就会返回 y 的值(例子参考楼上那题)。
动动手答案:
0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。
需要注意的地方在代码中已经注释!
1. import random 2. times = 3
3. secret = random.randint(1,10)
4. print('------------------我爱鱼C工作室------------------') 5. # 这里先给guess赋值(赋一个绝对不等于secret的值) 6. guess = 0
7. # print()默认是打印完字符串会自动添加一个换行符,end=\参数告诉print()用空格代替
换行
8. # 嗯,小甲鱼觉得富有创意的你应该会尝试用 end=\? 9. print(\不妨猜一下小甲鱼现在心里想的是哪个数字:\10. while (guess != secret) and (times > 0): 11. temp = input()
12. guess = int(temp)
13. times = times - 1 # 用户每输入一次,可用机会就-1 14. if guess == secret:
15. print(\我草,你是小甲鱼心里的蛔虫吗?!\16. print(\哼,猜中了也没有奖励!\17. else:
18. if guess > secret:
19. print(\哥,大了大了~~~\20. else:
21. print(\嘿,小了,小了~~~\22. if times > 0:
23. print(\再试一次吧:\24. else:
25. print(\机会用光咯T_T\26. print(\游戏结束,不玩啦^_^\
复制代码
1. 尝试写代码实现以下截图功能:
1. temp = input('请输入一个整数:') 2. number = int(temp) 3. i = 1
4. while number: 5. print(i) 6. i = i + 1
7. number = number - 1
复制代码
2. 尝试写代码实现以下截图功能:
1. temp = input('请输入一个整数:') 2. number = int(temp) 3. while number: 4. i = number - 1 5. while i:
6. print(' ', end = '') 7. i = i - 1 8. j = number 9. while j:
10. print('*', end = '') 11. j = j - 1 12. print()
13. number = number - 1
复制代码
3. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
小甲鱼希望你认真对待作业就像你希望小甲鱼推出高质量视频一样渴望^_^
测试题答案:
0. 请问以下代码会打印多少次“我爱鱼C!”
死循环,会一直打印“我爱鱼C!”(嗯,这也算是永远支持鱼C的方法之一),直到崩溃或者用户按下快捷键 CTRL + C(强制结束)
造成死循环的原因是 while 后边的条件永远为真(True),在 Python 看来,只有以下内容会被看作假(注意冒号括号里边啥都没有,连空格都不要有!):False None 0 \
其他一切都被解释为真!
不妨试试:
1. while '':
2. print('进入循环') 3. print('退出循环')
复制代码
或者
1. while Flase: 2. print('进入循环') 3. print('退出循环')
复制代码
或者
1. while 0:
2. print('进入循环') 3. print('退出循环')
复制代码
1. 请问以下代码会打印多少次“我爱鱼C!”
会打印 10 次。
2. 请写出与 10 < cost < 50 等价的表达式
(10 < cost) and (cost < 50)
3. Python3 中,一行可以书写多个语句吗?
可以,语句之间用分号隔开即可,不妨试试: >>> print('I love fishc');print('very much!')
4. Python3 中,一个语句可以分成多行书写吗?
可以,一行过长的语句可以使用反斜杠或者括号分解成几行,不妨试试:
1. >>> 3 > 4 and \\ 2. 1 < 2
复制代码
或者
1. >>> ( 3 > 4 and 2. 1 < 2 )
复制代码
5. 【该题针对有C或C++基础的朋友】请问Python的 and 操作符 和C语言的 && 操作符 有何不同?
有图有真相(C\\C++ VS Python):
VS
6. 听说过“短路逻辑(short-circuit logic)”吗?
逻辑操作符有个有趣的特性:在不需要求值的时候不进行操作。这么说可能比较“高深”,举个例子,表达式 x and y,需要 x 和 y 两个变量同时为真(True)的时候,结果才为真。因此,如果当 x 变量得知是假(False)的时候,表达式就会立刻返回 False,而不用去管 y 变量的值。
正在阅读:
2022年湖南工业大学948工程热力学考研精品资料之华自强《工程热04-08
青岛版四年级下册书法练习指导教案06-26
白酒复习题09-14
2013届高三英语一轮复习小专题测试1005-17
幸福的伤口作文800字06-16
浅谈运输公司12-17
中华人民共和国残疾评定表03-06
一次难忘的尝试作文700字06-20
通风与空调工程施工质量监理实施细则04-29
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 甲鱼
- 课后
- 全套
- Python
- 论坛
- 2016湖南地方文化常识地理全面复习 - 图文
- 最新苏教版 小学六年级数学上册第一单元长方体、正方体教学设计含教学反思
- 23483一完小五年级数学
- 如何有效开展大班幼儿区域活动
- 最终修订版说明书1111 - 图文
- 高支模工程专项施工方案(11.3米)怡湖苑阅 - 图文
- 桥式整流及电容滤波电路
- 雅思写作8分必备话题词汇:工作类
- 北师大版小学五年级数学上册解决问题应用题大全
- 案例(Jack Lee)-北京市建筑设计研究院有限公司-北京新机场旅客航站楼及综合换乘中心BIM应用-1226 - 图文
- 笠翁对韵·卷一·六 鱼原文
- 2018普陀区初三英语一模卷及答案解析 - 图文
- 4.外文翻译财务111柯聪
- 高中数学第二章《2.2直线、平面平行的判定及其性质》一课一练3必修2
- 哈密市第四中学2012年党风廉政建设工作总结
- 黑格尔市民社会理论及其对当代中国的启示(一)
- 语文人教版九年级上册名著导读《水浒传》教学设计
- 专题 高中物理E-x、 φ-x 电势能与位移关系 图像分析
- 小学数学教学中学生提问能力的培养探讨
- 中国投资环境评估报告