Python入门基础学习 二
猜数字小游戏进阶版
- 修改建议:
- 猜错的时候程序可以给出提示,告诉用户猜测的数字偏大还是偏小;
- 没运行一次程序只能猜测一次,应该提供多次机会给用户猜测;
- 每次运行程序,答案可以是随机的,因为程序答案是固定的话容易导致答案外泄。
- 针对第一条改进建议,就需要用到条件分支,判断猜测的数字和答案比是大还是小,Python的比较操作符跟C一样。
条件分支
if 条件:
条件为真(Ture)执行的操作
else:
条件为假(False)执行的操作
- 不用大括号,用缩进,冒号后面会自动缩进,Python编程对格式要求非常严格,缩进就和大括号的效果是一样的。
- 针对第一条修改意见:
print('---------------小游戏----------------')
temp=input("猜一下我心中想的是哪个数字:")
guess=int(temp)
if guess == 8:
print("猜中了!")
else:
if guess >8:
print("大了大了悠着点")
else:
print("又有点小")
print("游戏结束")
while 循环
while 条件:
条件为真(Ture)执行的操作
- 通过while改进的小游戏:(图7)
print('---------------小游戏----------------')
temp=input("猜一下我心中想的是哪个数字:")
guess=int(temp)
while guess!=8:
temp=input("猜错了,再给一次机会吧:")
guess=int(temp)
if guess==8:
print("bingo!")
else:
if guess > 8:
print("大了大了悠着点")
else:
print("有点小,再大胆一点")
print("游戏结束")
- Python中的and逻辑操作符可以将任意表达式连接在一起,并得到一个布尔类型的值,只有两边都为true,结果才能为true。
randint 函数
- randint()函数是random模块里的函数,可以返回一个随机的整数。
- 可以使用randint来实现游戏改进第三条建议并且还可以限定猜测的次数:(图8)
import random
secret=random.randint(1,100)
print('---------------小游戏----------------')
temp=input("猜一下我心中想的是哪个数字:")
guess=int(temp)
i=0
while guess!=secret and i<5:
temp=input("猜错了,再给一次机会吧:")
guess=int(temp)
i=i+1
if guess==secret:
print("bingo!")
else:
if guess > secret:
print("大了大了悠着点")
else:
print("有点小,再大胆一点")
if i==5:
print("机会用完了...")
print("游戏结束")