我们时常在电视台看到一些节目,这些节目,会展示一个商品,然后由嘉宾猜价格。嘉宾每猜一次价格,主持人会告诉嘉宾,高了,还是低了。然后嘉宾根据主持人提示,调整报价,直到最后答对。今天这期小编就向大家展示一下这个简单的小游戏。
直接上代码
import random
2
3print("""
4###### 猜字小游戏 #######
5# 1.开始游戏 #
6# 2.任意键自动退出 #
7######################
8""")
9put = input("请输入'1'开始游戏:")
10if put == "1":
11 count = number = 5
12 secret = random.randint(1, 50)
13 print("我已经准备好了数字,一个在1-50之间的数字,来猜一下我心里想的数字是几?")
14 while True:
15 num_str = input("请输入你的答案:").strip()
16 number = number - 1
17 if not num_str.isdigit() and number > 0:
18 print("错误:'%s'不是一个数字。很可惜,你的机会用光光了,下次再来吧" % num_str)
19 break
20 elif not num_str.isdigit():
21 print("错误:'%s'不是一个数字,请输入一个整数。还剩%s次机会" % (num_str, number))
22 continue
23
24 # 这里需要将字符串转换成数字,然后才能与数字进行比较
25 n = int(num_str)
26 if n == secret:
27 print("哼,我心里想的数是%s,你居然猜中了,送你一个甜甜的吻做奖励吧^_^" % secret)
28 exit("游戏结束!")
29 elif n > secret and number > 0:
30 print("我心想的数字比%s小,还剩%s次机会" % (n, number))
31 elif n < secret and number > 0:
32 print("我心想的数字比%s大,还剩%s次机会" % (n, number))
33
34 if number == 0:
35 exit("没想到你那么笨,%d次机会都没有猜到! 不妨告诉你,我心里的数字是:%s" % (count, secret))
36else:
37 exit("退出游戏成功!")
不要小看这个简简单单的猜数字小游戏,它可是涉及到很多的基础知识点的:input函数、字符串、while循环、if条件判断语句、break语句。
那让我们来由浅入深的讲讲本次的案例
游戏介绍:程序自己有一个数字,用户输入一个数字,两个数字进行比较。
my_num = 5
you_num = input("请输入一个数字:")
you_num = int(you_num)
# 一个等于号是复制符号 两个等于号才是等于号
print(my_num, you_num)
print(type(my_num), type(you_num))
# 不同类型之间,肯定是不会相等的
if my_num == you_num:
print(f'恭喜你猜对了,当前的数字为{my_num}')
else:
print(f'你太菜了,这都能猜错, 当前的数字为{my_num}, 你输入的数字是{you_num}')
是不是很简单,这个是只能猜一次的,不管对错。
下面的就开始升级了,能一直猜,直到猜对为止
如果我要猜三次、N次,直到猜对位置
times = 1
while True:
print(f'开始第 {times} 次猜数字')
you_num = input("请输入一个数字(1-10):")
# 如果输入的内容不是一个数字
if you_num.isdigit():
you_num = int(you_num)
if my_num == you_num:
print(f'恭喜你猜对了,当前的数字为{my_num}')
break # 猜对了才会进入第 22 行
else: # 猜错了才会进入的 23 行
if my_num > you_num:
print('数字猜小了')
else:1
print('数字猜大了')
if times == 10:
print(f'你已经没有机会了')
break
times += 1
else:
print('输入错误,请输入一个数字')
# random 是一个内置的随机函数模块
import random
my_num = random.randint(1, 100)
times = 1
while True:
print(f'开始第 {times} 次猜数字')
you_num = input("请输入一个数字(1-100):")
you_num = int(you_num)
if my_num == you_num:
print(f'恭喜你猜对了,当前的数字为{my_num}')
break
else:
if my_num > you_num:
print('数字猜小了')
else:
print('数字猜大了')
times += 1
end
这期就分享到这了~以上就是这个游戏涉及到的知识点。大家可以动手尝试一下啦,记得给小编三连噢~家人们的支持是小编更新最大的动力
想领取完整源码跟python学习资料可私信我或点击这行字体即可