-- coding: utf-8 --

猜物价游戏 - GuessPrice项目模板

通过按钮和文本框实现输入

所有和游戏相关的输出都显示在控制台上

import math import simpleguitk import random

初始化全局变量

random_num = 0 # 电脑生成的随机数,初始化为0 num_range = 10 # 生成随机数的范围 remain_time = 0 # 剩余的竞猜次数,初始化为0

自定义函数,用于游戏和新一轮游戏的启动

def new_game(): global random_num, num_range, remain_time remain_time = int(math.ceil(math.log(num_range + 1, 2))) print("\n欢迎来到购物街!") print("新一轮商品竞猜开始。竞猜价格范围从0到", num_range) print("总的竞猜机会有", remain_time,"次") random_num = random.randrange(0, num_range)

为控制面板定义事件处理程序

def range10(): # 改变竞价范围为[0,10)并重新启动游戏 global num_range num_range = 10 new_game()

def range100(): # 改变竞价范围为[0,100)并重新启动游戏 global num_range num_range = 100 new_game()

def range1000(): # 改变竞价范围为[0,1000)并重新启动游戏 global num_range num_range = 1000 new_game()

def input_guess(guess): # 游戏主要的逻辑设计在这一部分 # 首先判断竞猜机会是否已用完,如果没有用完就判断输入的价格和电脑产生的价格是否相同, # 根据比较结果输出相应内容,并修改剩余的竞猜次数。如果用完了竞猜机会就提示用户, # 并显示商品实际价格,然后重新开始游戏。 global remain_time remain_time -= 1 guess_num = int(guess) print("你的竞猜价格是:", guess_num)

if guess_num > random_num:
    print("你的价格太高了!")
    if remain_time > 0:
        print("你还有", remain_time, "次机会。")
    else:
        print("你没有机会了!商品实际价格是:", random_num)
        new_game()
elif guess_num < random_num:
    print("你的价格太低了!")
    if remain_time > 0:
        print("你还有", remain_time, "次机会。")
    else:
        print("你没有机会了!商品实际价格是:", random_num)
        new_game()
else:
    print("恭喜你猜对了!商品实际价格是:", random_num)
    new_game()

产生竞猜数

new_game()

创建框架

frame = simpleguitk.create_frame('GuessPrice', 300, 300)

为框架添加按钮

frame.add_button('0-10', range10, 200) frame.add_button('0-100', range100, 200) frame.add_button('0-1000', range1000, 200)

为框架添加文本框

frame.add_input('输入你的竞猜价格:', input_guess, 200)

启动框架

frame.start(

完善下列Python代码# -- coding utf-8 --# 猜物价游戏 - GuessPrice项目模板# 通过按钮和文本框实现输入# 所有和游戏相关的输出都显示在控制台上# 步骤1 请在此处填写代码 分别导入math simpleguitk random 模块pass# 初始化全局变量random_num = 0 # 电脑生成的随机数初始化为0num_range = 10 #

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

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