一般猜数字程序
#猜数字
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
恭喜你,猜对了