python知识点(3)——AI猜数字,经典小题目

# 三、猜数字的AI
#
# 和猜数字一样,不过这次是设计一个能猜数字的AI
#
# 功能描述:用户输入一个单位以内的数字,AI要用最少的次数猜中,并且显示出猜的次数和数字。
# -*- coding: utf-8 -*-
"""
:author: lihui
:website: withlihui.com
Let computer guess a number
"""

while True:
    try:
        num = int(input('Enter a number: '))
    except ValueError:
        print ("The input must be a integer!")
        continue
    break

guess = num / 2
middle = num / 4
step = 0

while guess != num:
    if num > guess:
        guess += middle
        print ("I gusee: ", guess)
    elif num < guess:
        guess -= middle
        print ("I gusee: ", guess)
    middle /= 2
    if middle == 0:
        middle = 1
    step += 1

print ("Aha! The answer is: ", guess)

print ("I totally use %d steps." % step)

Python学习交流、资源共享群:563626388 QQ

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我们可以使用Python自带的GUI库Tkinter来实现这个猜数字小游戏。 首先,我们需要导入Tkinter库和random库: ```python import tkinter as tk import random ``` 然后,我们需要定义一个函数来生成随机数,并将它存储在一个变量中: ```python def generate_number(): global number number = random.randint(1, 100) ``` 接下来,我们需要定义一个函数来处理用户输入的数字,并根据用户猜测的数字给出不同的提示: ```python def check_guess(): guess = int(guess_box.get()) if guess < number: result_label.config(text="猜小了!") elif guess > number: result_label.config(text="猜大了!") else: result_label.config(text="恭喜你,猜对了!") ``` 在主函数中,我们需要创建一个窗口,并添加一些控件,如标签、输入框、按钮等: ```python window = tk.Tk() window.title("猜数字游戏") start_button = tk.Button(window, text="开始游戏", command=generate_number) start_button.pack() guess_box = tk.Entry(window) guess_box.pack() guess_button = tk.Button(window, text="猜数字", command=check_guess) guess_button.pack() result_label = tk.Label(window, text="") result_label.pack() window.mainloop() ``` 完整代码如下: ```python import tkinter as tk import random def generate_number(): global number number = random.randint(1, 100) def check_guess(): guess = int(guess_box.get()) if guess < number: result_label.config(text="猜小了!") elif guess > number: result_label.config(text="猜大了!") else: result_label.config(text="恭喜你,猜对了!") window = tk.Tk() window.title("猜数字游戏") start_button = tk.Button(window, text="开始游戏", command=generate_number) start_button.pack() guess_box = tk.Entry(window) guess_box.pack() guess_button = tk.Button(window, text="猜数字", command=check_guess) guess_button.pack() result_label = tk.Label(window, text="") result_label.pack() window.mainloop() ``` 运行程序,你就可以在窗口中玩猜数字小游戏了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值