小甲鱼《零基础学习Python》课后笔记(四)

测试题

0. 请问以下代码会打印多少次“我爱鱼C!”

while 'C':  
    print('我爱鱼C!')  

会一直打印直到电脑内存被占用完。字符串‘C’是一个非0值,所以while语句判断为真,就会一直打印。

1.请问以下代码会打印多少次“我爱鱼C!”

i = 10  
while i:  
    print('我爱鱼C!')  
    i = i - 1  

10次,每次循环i减1,10次后i=0,while语句不成立,停止打印。

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

(cost > 10) and (cost < 50)  

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

不行。

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

  可以。如果有括号(小括号、中括号、大括号),可以在任意地方换行。如果没有,需要断开的地方添加“\”字符,表示这一行尚未结束。

5.请问Pythonand操作符和C语言的&&操作符有何不同?

  关于逻辑and和or,python的用法和C的用法主要异同点如下:

① 当两个操作数均为逻辑值时,与我们通常理解的逻辑运算一致;

②当第一个操作数为逻辑值,第二个操作数为其他类型时,执行以下规则:

    a and b:在a为false的时候,返回a,否则返回b。

    a or b:在a为true的时候,返回a,否则返回b。

  总之,and与or返回的不仅有true/false的语义,还返回了它的值。

6.听说过“短路逻辑(short-circuitlogic)”吗?

编程语言常用的逻辑:

if a and b:#如果a是false,那么跳过b的判断,结果直接false

if a or b:#如果a为true,那么跳过b的判断,直接true

动动手

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

import random
secret = random.randint(1,10)
i = 3
temp = input("猜一猜Allen心中的数字:")  
number = int(temp)  
while (i > 0):
    if(number == secret):
        print("哇,你是Allen肚里的蛔虫吗?")
        print("奖励一个香吻!")
        break
    else:
        if number > secret:
            print("大了大了!")
        else:
            print("小了小了!")
        if i > 1:
            temp = input("哎呀!再猜猜看:")  
            number = int(temp)  
    i = i -1
print("游戏结束,不玩啦!")

猜你喜欢

转载自blog.csdn.net/qq_24546137/article/details/80978815