python猜数字游戏实例_python3实现猜数字小游戏:根据设置参数进行猜数字游戏...

小游戏介绍

猜数字小游戏会根据不同的设置选项,进入到不同难度的游戏模式。找到规律后就会发现不是盲目随便猜的,详细玩法见下面的介绍。python3环境下代码可以直接可用。

源码

import random

import time

# 自定义判断是否为数字

def is_number(s):

try:

float(s)

return True

except ValueError:

return False

# 猜数字小游戏主功能函数

def guessNumber():

print('''

*******************************************************************************

数字猜猜猜玩法介绍:

1、程序开始后会生成一个数字,根据设置,可为整数或小数,每轮游戏中该数字保持不变

2、输入你猜测的这个数是多少,如果输错会让你继续输入,直到猜对(如果设置了最多次

数限制,达到限制后会自动退出本轮游戏)

3、可以设置是否提示目标数字所在的区间

4、如果连续3次输入的不是数字,会强制退出本轮游戏。

5、一轮游戏结束后如果选择继续玩游戏则重新开始一轮,如果选择不继续玩游戏则退出游戏

6、如果设置的开始数小于结尾数,则会对换两个数的位置

*******************************************************************************

''')

# 设置游戏参数(起始和结尾数后续改为游戏难易程度,根据不同的难易程度自动生成随机开始和结尾数)

print('******请先设置游戏参数******')

# 难度选择,0-目标数字在0-100之间,1-目标数字在-10000-10000之间,2-目标数字在-100000-100000之间,3-开始和结束数字随机,其他-目标数字在0-1000之间

print('难易程度说明:0-目标数字在0-1000之间,1-目标数字在-10000-10000之间,2-目标数字在-100000-100000之间,3-开始和结束数字随机,其他-目标数字在0-500之间')

easyOrHard = input('请选择难易程度:')

if easyOrHard == '0':

startNum = 0

endNum = 999 + random.random()

elif easyOrHard == '1':

startNum = -10000 + random.random()

endNum = 9999 + random.random()

elif easyOrHard == '2':

startNum = -100000 + random.random()

endNum = 99999 + random.random()

elif easyOrHard == '3':

startNum = random.uniform(-100000000, 0)

endNum = random.uniform(0.1, 100000000)

else:

startNum = 0

endNum = 499 + random.random()

limitCount = input('设置最多尝试次数(正整数n-限制n次,其他-不限制):')

withDecimal = input('设置是否带小数(1-带小数,其他-不带小数):')

decimals = input('设置小数的最大位数(必须为整数且大于等于1,否则默认为1,并且该参数只是限制小数的最大位数,不一定是小数的实际位数):')

isTellMaxAndMin = input('设置是否显示目标数所处的区间(0-不显示,其他-显示):')

isNeedHelp = input('是否需要提示(y-需要,其他-不需要):')

if not is_number(limitCount) or int(float(limitCount)) < 1:

limitCount = 0

limitCount = int(float(limitCount))

if not is_number(decimals) or int(float(decimals)) < 1:

decimals = 1

decimals = int(float(decimals))

try:

# 游戏开关

is_start_now = input('参数设置完成,是否现在开始游戏?[y-开始,q-退出,其他-稍后开始],请选择:').lower()

while (is_start_now != 'y'):

if is_start_now == 'q':

print('已退出游戏')

return

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值