利用Python开发猜测数字的小程序

需求及代码

# -*- encoding: utf-8 -*-
"""
    需求:
    01:程序随机生成0至10的整数【注意,不是先随机生成一个整数,让用户猜测3次哈】
    02:用户每轮最多只能猜测3次【每猜测一次,程序要另外生成新的整数】,当第3次还没有猜对的话,根据用户的选择看是否继续
    03:用户输入的只能是整数(若输入的是空格、回车、小数、字母、特殊字母,不提示是否输入错误,也不与随机生成的整数做比较,只是提示用户输入整数)
"""

# 打印游戏名称
print("猜测0至10的整数【每轮3次机会】".center(100,"-"))

# 循环判断用户的输入
count = 0
while count < 3:

    # 程序生成0至10的整数【每猜测一次,都会生成新的随机整数】
    import random
    n = random.randint(0, 10)

    # 提示用户输入猜测的整数
    user_guess = input("请输入你猜测的整数:")

    # 判断用户的输入及将用户输入的整数转换成int类型
    if len(user_guess.strip()) == 0 or user_guess.isdigit() is False:
        continue
    if len(user_guess.strip()) != 0 and user_guess.isdigit() is True:
        count += 1

    # 将用户输入的整数转换成int类型
    user_guess_int = int(user_guess)

    # 判断用户的猜测与程序随机生成的整数是否相等【这里限制用户每轮最多3次机会,若3次机会还没猜对,根据用户的选择看是否继续】
    if count == 1 and user_guess_int> n:
        print("猜得不对,还有2次机会,请试试小一点的数。")
    elif count == 1 and user_guess_int < n:
        print("猜得不对,还有2次机会,请试试大一点的数。")
    elif count == 2 and user_guess_int > n:
        print("猜得不对,还有1次机会,请试试小一点的数。")
    elif count == 2 and user_guess_int < n:
        print("猜得不对,还有1次机会,请试试大一点的数。")
    elif count == 3 and user_guess_int != n:
        choice = input("已第3次机会,且猜得不对,是否继续:继续[Y/y] 退出[任意字符]:")
        if choice == "Y" or choice == "y":
            count = 0                                                      # 重置count等于0
            continue                                                       # 跳过当次循环
        else:
            print("!!!谢谢您的参与")
            break
    elif user_guess_int == n:
         choice1 = input("恭喜你猜对了,是否继续:继续[Y/y] 退出[任意字符]")
         if choice1 == "Y" or choice1 == "y":
            count = 0                                                      # 重置count等于0
            continue                                                       # 跳过当次循环
         else:
            print("!!!谢谢您的参与")
            break

代码执行效果

 

转载于:https://www.cnblogs.com/chenliangc/articles/11527512.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值