Python猜数字游戏:挑战你的逻辑思维

想挑战一下你的编程技能和逻辑思维吗?让我们一起用Python创建一个经典的猜数字游戏吧!

游戏规则

系统会随机生成一个0000-9999范围内的无重复数字的四位数。你需要输入一个四位数进行猜测,程序会返回 xAyB 的提示,其中:

  • A 表示位置和数字都正确的个数* B 表示数字正确但位置不正确的个数

根据提示不断调整你的猜测,直到猜出正确答案(返回 4A0B)!

Python代码实现

以下是用Python实现猜数字游戏的代码:pythonimport random

def generate_random_number(): digits = random.sample(range(10), 4) number = ''.join(str(d) for d in digits) return number

def evaluate_guess(secret_number, guess): a = 0 # 位置和数字都正确的个数 b = 0 # 数字正确但位置不正确的个数

for i in range(4):        if guess[i] == secret_number[i]:            a += 1        elif guess[i] in secret_number:            b += 1        return (a, b)

def play_game(): secret_number = generate_random_number() guesses_taken = 0

print('欢迎参加猜数字游戏!')    print('系统已生成一个四位数,请开始猜测。')

while True:        guess = input('请输入一个四位整数:')

    if len(guess) != 4 or not guess.isdigit():            print('输入无效,请输入四位整数。')            continue

    guesses_taken += 1

    result = evaluate_guess(secret_number, guess)

    print(f'{result[0]}A{result[1]}B')

    if result[0] == 4:            print(f'恭喜你猜对了!答案是 {secret_number}')            print(f'你一共猜了 {guesses_taken} 次。')            break

play_game()

代码解析

  1. generate_random_number() 函数: * 从0到9的数字中随机选择4个不重复的数字。 * 将这些数字拼接成一个字符串,表示四位数。

  2. evaluate_guess(secret_number, guess) 函数: * 遍历猜测数字和秘密数字的每个位置。 * 如果位置和数字都相同,则 A 的计数加一。 * 如果数字相同但位置不同,则 B 的计数加一。

  3. play_game() 函数: * 生成一个随机的秘密数字。 * 进入游戏循环,接受用户的猜测输入。 * 验证输入是否为有效的四位整数。 * 调用 evaluate_guess() 函数评估猜测结果并打印提示。 * 如果猜对 (4A0B),则结束游戏,并显示猜测次数和秘密数字。

总结

通过这个简单的游戏,你可以学习到:

  • 如何使用 Python 生成随机数。* 如何处理用户输入和验证数据。* 如何使用循环和条件语句控制程序流程。* 如何将一个问题分解成更小的函数进行解决。

快来挑战一下自己,看看你能否用最少的次数猜出答案吧!

Python猜数字游戏:挑战你的逻辑思维

原文地址: http://www.cveoy.top/t/topic/nNU 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录