Python初学者笔记(六)——猜数字

本文介绍了如何使用Python编写一个1000以内猜数字的小程序,涉及函数编写、随机数生成、用户输入验证以及if/while语句的运用。通过实例演示了两种不同的猜数字游戏版本:一种采用函数和函数输入,另一种使用while循环。
摘要由CSDN通过智能技术生成

#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终止
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值