今天看视频写的代码:
这是对第一个程序的第一次改进:
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. 尝试写代码实现以下截图功能: