Python(猜数字)

一般猜数字程序

#猜数字
import random
randnum = random.randint(1,100)
while True:
    guess = input("请输入一个1~100的整数: ")
    if not guess.isdigit():
        print("请输入整数")
    elif int(guess) <1 or int(guess) >100:
        print("要输入1~100之间的整数")
    else:
        if int(guess) > randnum:
            print("猜的数字大了")
        elif int(guess) < randnum:
            print("猜的数字小了")
        else:
            print("恭喜你,猜对了")
            break

结果

请输入一个1~100的整数: 50
猜的数字小了
请输入一个1~100的整数: 75
猜的数字大了
请输入一个1~100的整数: 65
猜的数字小了
请输入一个1~100的整数: 70
恭喜你,猜对了

如果,学过函数可以得之,函数是把复杂的事情转化为简单的事情一步步的得出。“化繁为简,分而治之”。

import random
def guess_num(min,max):#打包成一个函数
    randnum = random.randint(min,max)
    while True:
        guess = input("请输入%d~%d之间的整数: "%(min,max))
        if not guess.isdigit():
            print("请输入整数")
        elif int(guess) < 1 or int(guess) > 100:
            print("要输入&d~%d之间的整数!!!"%(min,max))
        else:
            if int(guess) > randnum:
                max = int(guess)
                print("猜的数字大了")
            elif int(guess) < randnum:
                min = int(guess)
                print("猜的数字小了")
            else:
                print("恭喜你,猜对了")
                break
guess_num(20,50)#调用函数

结果为

请输入20~50之间的整数: 40
猜的数字大了
请输入20~40之间的整数: 30
猜的数字小了
请输入30~40之间的整数: 35
猜的数字大了
请输入30~35之间的整数: 33
猜的数字大了
请输入30~33之间的整数: 32
猜的数字大了
请输入30~32之间的整数: 31
恭喜你,猜对了

倘若,第五行代码

 guess = input("请输入%d~%d之间的整数: "%(min,max))

修改为

 guess = int(input("请输入%d~%d之间的整数: "%(min,max)))

那么,其余代码可以精简许多,如

import random
def guess_num(min,max):#打包成一个函数
    randnum = random.randint(min,max)
    while True:
        guess = int(input("请输入%d~%d之间的整数: "%(min,max)))
        if guess > randnum:
            max = guess
            print("猜的数字大了")
        elif guess < randnum:
            min = guess
            print("猜的数字小了")
        else:
            print("恭喜你,猜对了")
            break

guess_num(10,50)#调用函数

结果为

请输入10~50之间的整数: 30
猜的数字大了
请输入10~30之间的整数: 20
猜的数字大了
请输入10~20之间的整数: 15
猜的数字小了
请输入15~20之间的整数: 17
猜的数字小了
请输入17~20之间的整数: 18
猜的数字小了
请输入18~20之间的整数: 19
恭喜你,猜对了
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值