练手小程序(二)

这篇博客介绍了一个简单的Python小程序,该程序随机生成一个正整数,并让用户进行猜测。通过比较用户的输入与随机数,程序会提供相应提示,直到用户猜中为止。此小程序主要运用了random模块。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

继续继续,今天的小程序跟昨天的类似,也只用到random模块,今天的任务是猜数字,随机生成一个正整数,然后让使用者给出猜测数,程序对比后给出进一步提示,知道猜中!!!

以下是程序代码:

#!/usr/bin/env python
# _*_ coding: utf-8 _*_

from random import randint

def gen_random_number(lower, upper):
    "generate a random integer number."
#    if lower > upper:
#        lower, upper = upper, lower
    return randint(lower, upper)

def get_lower_and_upper():
    "get lower limit and upper limit from user's input"
    while True:
        try:
            a, b = raw_input("Please input two positive integer number: ").split()
            a, b = int(a), int(b)
        except ValueError, e:
            print(e)
            continue 
        if abs(a - b) <10:
            print("The difference between the two number must more than 10")
            continue 
        elif abs(a -b) > 100:
            print("The difference between the two number must less than 100")
            continue 
        else:
            return a, b

def guess_number():
    lower, upper = get_lower_and_upper()
    if upper < lower:
        lower, upper = upper, lower
    random_num = gen_random_number(lower, upper)
    while True:
        try:
            guess_num = int(raw_input("Guess a number between %d and %d: " % (lower,upper)))
        except ValueError, e:
            print("e")
            continue
        if guess_num == random_num:
            print("Unbelievable, you got the right number!!!")
            break
        elif guess_num > random_num and guess_num < upper:
            upper = guess_num
            print("The number is more than it shoud be. Try again!")
            continue
        elif guess_num < random_num and guess_num > lower:
            lower = guess_num
            print("The number is less than it shoud be. Try again!")
            continue

if __name__ == "__main__":
    guess_number()

在程序中为了防止猜测范围过大,设置在了10-100之间-_-

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值