python第四次学习笔记

今天看视频写的代码:

这是对第一个程序的第一次改进:

1 number = input("猜猜我在想啥:")
2 guess = int(number)
3 if guess == 8:
4     print("你真是厉害啊")
5     print("不过没有奖励哈哈") 
6 if guess > 8:
7     print("你猜大哩,哼,不跟你玩哩~")
8 else:
9     print("你猜小哩,哼,不跟你玩哩~")

这是对第一个程序的第二次改进:

 1 number = input("哎呀,来输个数呗:")
 2 guess = int(number)
 3 while guess !=8:
 4     number = input("哎呀猜错啦,重新输入吧:")
 5     guess = int(number)
 6     if guess == 8:
 7         print("你真是厉害啊")
 8         print("不过没有奖励哈哈")
 9     else:
10         if guess > 8:
11             print("你猜大哩,哼,不跟你玩哩~")
12         else:
13             print("你猜小哩,哼,不跟你玩哩~")

这是对第一个程序的第三次改进:

import random
secret = random.randint(1,10)
number = input("哎呀,来输个数呗:")
guess = int(number)
while guess != secret:
    number = input("哎呀猜错啦,重新输入吧:")
    guess = int(number)
    if guess == secret:
        print("你真是厉害啊")
        print("不过没有奖励哈哈")
    else:
        if guess > secret:
            print("你猜大哩,哼,不跟你玩哩~")
        else:
            print("你猜小哩,哼,不跟你玩哩~")
print('gg啦~')

课后习题:

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

1. while 'C': 
2.     print('我爱鱼C!') 

无数次

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

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

10次

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

cost>10 and cost<50


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

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

不可以

5. 请问Python的 and 操作符 和C语言的 && 操作符 有何不同?【该题针对有C或C++基础的朋友】

逻辑运算,都是短路求值,不同在于C中返回的始终是逻辑值,而python中返回的是实际的对象

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

布尔运算符有个有趣的特性:只有在需要求值时才进行求值。举例来说,表达式x and y需要两个变量都为真时才为真,所以如果x为假,表达式就会立刻返回false,而不管y的值(事实上各个语言都有这个特性)。实际上,如果x为假,表达式会返回x得值----否则它就返回y的值。这种行为被称为短路逻辑(short-circuit logic)或惰性求值(lazy evaluaion):布尔运算符通常被称为逻辑运算符,就像你看到的那样第2个值有时“被短路了”。这种行为对于or来说也同样适用。在表达式x or y中,x为真时,它直接返回x的值,否则返回y值。注意,这意味着在布尔运算符之后的所有代码都不会执行。
动动手: 
0. 完善第二个改进要求(为用户提供三次机会尝试,机会用完或者用户猜中答案均退出循环)并改进视频中小甲鱼的代码。 

 
1. 尝试写代码实现以下截图功能:

posted @ 2017-12-18 22:24  masquerade。  阅读(604)  评论(0编辑  收藏  举报