欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

运用Python实现的一个猜数字游戏

程序员文章站 2024-03-22 23:22:58
...

首先跟着我进行一些知识的梳理

1. Python 随机数生成

from random import randint
a=randint(501,1000)
b=randint(31,59)

在这里让程序自己给出了2个随机数,分别把值赋给a,b,其中a取值为501到1000之间的整数(包括501和1000),这个取值您可以根据自己的情况设定。

2.Python中"//"的含义

在python中"/“表示除以,”//"表示整除。
例如:

5/3
运行结果 =1.6666666666666667
5//3
运行结果:1
5.0/3
运行结果:1.6666666666666667
5.0//3
运行结果:1.0

3.format()用法

format()增强了字符串格式化的功能。基本语法是通过 {} 和 : 来代替以前的 % 。format 函数可以接受不限个参数,位置可以不按顺序。

"{} {}".format("hello", "world")    # 不设置指定位置,按默认顺序
运行结果:'hello world'
 "{0} {1}".format("hello", "world")  # 设置指定位置
运行结果:'hello world'
"{1} {0} {1}".format("hello", "world")  # 设置指定位置
运行结果:'world hello world'
"{:.2f}".format(3.14159265)  #保留2位小数

4.isnumeric():

Python中isnumeric() 方法检测字符串是否只由数字组成。
例如:

number="1314520"
number.isnumeric()
运行结果:True
number="rao1314520"
number.isnumeric()
运行结果:False

您是否已经掌握了呢,接下来来看看我的代码:

from random import randint
a=randint(501,1000)
b=randint(31,59)
num = a//b
number = input('猜一猜{}//{}的运行结果吧'.format(a,b))
times = 1
while True:
  if times > 2:
    break
  if number.isnumeric():
    if int(number) == num:
      break
    if int(number) > num:
      number = input('不对哦,猜大了')
    else:
      number = input('不对哦,猜小了')
  else:
    if times==1:
        number = input('亲,请输入一个整数数字哦')
        times+=1
        continue
    if times==2:
        number = input('您输错啦,请给一个数字作为输入!')
        times+=1
    if times==3:
        print('游戏结束,太可惜了o(╥﹏╥)o')
        times+=1
        break
  times += 1
if times > 2 and int(number) != num:
    print('三次机会用完了,游戏结束,您失败了!')
else:
    print('恭喜你猜中了,太棒了!')
print('结果是' + str(num))
样例输出1:
猜一猜834//42的运行结果吧
样例输入119
输出:
恭喜你猜中了,太棒了!
输出:
结果是19
----------------------------
样例输出2:
猜一猜718//42的运行结果吧
样例输入224
输出:
不对哦,猜大了
输入:
22
输出:
不对哦,猜大了
输入:
19
输出:
三次机会用完了,游戏结束,您失败了!
结果是17