听说Python基础不好的人都无法写出来的一个小游戏:猜数字!

2021-09-02 10:05:45 浏览数 (1)

前言

不要小看这个简简单单的猜数字小游戏,它可是涉及到很多的基础知识点的:input函数、字符串、while循环、if条件判断语句、break语句。

那让我们来由浅入深的讲讲本次的案例

游戏介绍:程序自己有一个数字,用户输入一个数字,两个数字进行比较。

Python从零基础入门到实战系统教程、源码、视频、在线一对一解答,可以加群:1039649593

开始代码,先来一个最简单的版本

1. 有一个数字

代码语言:javascript复制
my_num = 5

2. 输入一个数字

代码语言:javascript复制
you_num = input("请输入一个数字:")
you_num = int(you_num)

3. 猜数字结果

代码语言:javascript复制
# 一个等于号是复制符号 两个等于号才是等于号
print(my_num, you_num)
print(type(my_num), type(you_num))

# 不同类型之间,肯定是不会相等的
if my_num == you_num:
    print(f'恭喜你猜对了,当前的数字为{my_num}')
else:
    print(f'你太菜了,这都能猜错, 当前的数字为{my_num}, 你输入的数字是{you_num}')

是不是很简单,这个是只能猜一次的,不管对错。

下面的就开始升级了,能一直猜,直到猜对为止

升级版

如果我要猜三次、N次,直到猜对位置

代码语言:javascript复制
times = 1
while True:
    print(f'开始第 {times} 次猜数字')

    you_num = input("请输入一个数字(1-10):")
    # 如果输入的内容不是一个数字
    if you_num.isdigit():
        you_num = int(you_num)

        if my_num == you_num:
            print(f'恭喜你猜对了,当前的数字为{my_num}')
            break  # 猜对了才会进入第 22 行
        else:  # 猜错了才会进入的 23 行
            if my_num > you_num:
                print('数字猜小了')
            else:1
                print('数字猜大了')
        if times == 10:
            print(f'你已经没有机会了')
            break

        times  = 1
    else:
        print('输入错误,请输入一个数字')

最终版本,随机数:1~100,猜对为止

代码语言:javascript复制
# random 是一个内置的随机函数模块
import random

my_num = random.randint(1, 100)

times = 1
while True:
    print(f'开始第 {times} 次猜数字')
    you_num = input("请输入一个数字(1-100):")
    you_num = int(you_num)

    if my_num == you_num:
        print(f'恭喜你猜对了,当前的数字为{my_num}')
        break
    else:
        if my_num > you_num:
            print('数字猜小了')
        else:
            print('数字猜大了')

    times  = 1

0 人点赞