#Python初学者笔记(六)——猜数字
1.1000以内猜一个数字
python的猜数字小程序有很多版本,今天介绍这个版本是在1000以内猜一个整数,利用了os模块的random,采用了函数的编写方式,利用这个小程序也可以改成其他版本。
# 猜数字游戏
#--coding=utf-8--
#mu02_1000内随机猜数字
import random, os
#输入值的函数,且防止输入非数字
def input_num():
while True:
try:
num = int(input('请输入一个1至1000内你猜的整数: '))
return num
break
except ValueError:
print('请输入正确的数字!')
#取随机数
rn = random.randint(0 ,1000)
low, high = 0, 1000
print('************猜一个1到1000内的整数************\n')
while True:
#调用输入函数
num = input_num()
#清空界面,告知使用者结果正确
if num == rn:
os.system('cls')
print('你猜对了,这个数字是:', num)
break
#os.system('cls')是清除屏幕
#提示输入的值不在范围内
elif num < low or num > high:
print('请输入一个区间内的数字:', str(low), 'and', str(high))
#输入的值大于随机数,重新给定范围
elif num > rn:
print('这个数字太大了')
high = num
print('请输入一个区间内的数字:', str(low), 'and', str(high))
#输入的值小于随机数,重新给定范围
elif num < rn:
print('这个数字太小了')
low = num
print('请输入一个区间内的数字:', str(low), 'and', str(high))
2.确定一个数字,然后利用if语句猜数字
number = 23
guess = int(input('Enter an integer : '))
# int将GUESS转化为一个整数
if guess == number:
# 新块从这里开始
print('Congratulations, you guessed it.')
print('(but you do not win any prizes!)')
# 新块在这里结束,空格X4!!!23
elif number < guess :
# 另一代码块
print('No, it is a little higher than that')
# 你可以在此做任何你希望在该代码块内进行的事情
else:
print('No, it is a little lower than that')
# 你必须通过猜测一个大于(>) 设置数的数字来到达这里。
print('Done')
# 这最后一句语句将在
# if 语句执行完毕后执行。
3.改为while语句猜数字
# -*- coding: utf-8 -*-
number = 23
while True:
guess = int(input('Enter an integer : '))
if guess == number:
print('Congratulations, you guessed it.')
break
# 这将导致 while 循环中止 ,break必须也空4格,否则不成立
elif guess < number:
print('No,it is wrong')
else:# 或者用elif guess > number
print('No,it is wrong,too')
# elif 必须空4格
# 这里必须空4格和IF对齐,不然一直循环,也可用break终止