当前位置:   article > 正文

【小甲鱼Python】改进我们的小游戏&&课后作业_python写出10

python写出10

测试题:

0. 请问以下代码会打印多少次“我爱鱼C!”
while ‘C’:
print(‘我爱鱼C!’)
复制代码

无穷多次

1. 请问以下代码会打印多少次“我爱鱼C!”
i = 10
while i:
print(‘我爱鱼C!’)
i = i - 1
复制代码

10次

2. 请写出与 10 < cost < 50 等价的表达式

(10 < cost) and (cost<50)

3. Python3 中,一行可以书写多个语句吗?(一行写多句)

可以,用分号隔开每个语句即可。

4. Python3 中,一个语句可以分成多行书写吗?(一句分多行)

可以,用\接在未写完的句子后,或用()将整个语句括起来。
如:

3>4 and \
       1<2
  • 1
  • 2
(3>4 and
1<2)
  • 1
  • 2

5. 请问Python的 and 操作符 和C语言的 && 操作符 有何不同?【该题针对有C或C++基础的朋友】
&& 操作符只能返回【逻辑值】: 0 或 1
and 操作符返回的是【实际值】

6. 听说过“短路逻辑(short-circuit logic)”吗?
Python中:

  1. 对于纯and语句,如果每一个表达式都为真,则返回最后一个表达式的实际值(因为要一直匹配到最后一个表达式,才能知道该表达式是否为真);如果有一个表达式为假,则返回第一个假表达式的实际值(因为根据第一个为假表达式就可以知道整个表达式为假了,没必要再看后面的表达式了)。例如:1 and 2 返回 2;3 and False 返回 False;1 and 0 and 3 and 5,有一个0为假,其他表达式都不用看,直接知道返回值为0,实际分析过程:((1 and 0) and 3 )and 5。
  2. 对于纯or语句,如果每一个表达式都为假,则返回最后一个表达式的实际值;如果有一个表达式为真,则返回第一个真表达式的实际值。例如:1 or 0 返回1;False or 3 or 0返回3。
  3. 对于and和or混合语句,逐个分析。例如:(False and 3 )or( 9 and 0) or 7 or 4 返回 7。
    注意:逻辑运算符优先级:not>and>or;分析:not 1 or 0 and 1 or 3 and 4 or 5 and 6 or 7 and 8 and 9
    【解】(not 1) or (0 and 1 )or (3 and 4) or (5 and 6) or (7 and 8 and 9)返回:4。
    这便是所谓的“短路逻辑”,类似于分析串并联电路中各个元件是否正常工作一样。

动动手:

0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。

print('--------------------我爱鱼C工作室--------------------')
guess = int(input('不妨猜一下小甲鱼现在心里想的是哪个数字:'))
ans = 8
i=1
while guess != ans and i<=3:
    if guess > 8:
        print('大了,大了~')
    else:
        print('小了,小了~')
    if i < 3:
        print('还有',3 - i,'次机会~')
        guess = int(input('再猜猜看吧:'))
    i+=1
if i > 3:
    print('机会用完了,游戏结束~')
else:
    print('猜对了,你是小甲鱼肚子里的蛔虫吗?!')
    print('哼~猜对了也没奖励~')
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18

经验总结:
1.分支不一定要用条件语句,while 也可以实现分支。
2.一方面要判断答案是否正确,另一方面要限制次数,所以是要同时判断两个条件是否成立。也可以用两层循环嵌套,最外层判断次数,内层判断答案,但是这样很麻烦。
3.在最后一次机会时,编代码要考虑的因素很多。利用次数来构建条件语句,从而输出某些特定语句或不输出某些语句,例如最后一次要提示用户机会用完了,所以设置if i > 3;最后一次时,告诉用户结果是偏大还是偏小,但是不再给予用户再次猜测的机会,故给出一个if i < 3进行判断。

1. 尝试写代码实现以下截图功能:
在这里插入图片描述

number=int(input('请输入一个整数:'))
i=1
while i <= number:
    print(i)
    i+=1
  • 1
  • 2
  • 3
  • 4
  • 5

2. 尝试写代码实现以下截图功能:
在这里插入图片描述

number=int(input('请输入一个整数:'))
i=number
while i > 0:
    print(' '*(i-1)+'*'*i)
    i-=1
  • 1
  • 2
  • 3
  • 4
  • 5

3. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好方式!
while循环

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/很楠不爱3/article/detail/412538
推荐阅读
相关标签