python3.3使用tkinter开发猜数字游戏示例


Posted in Python onMarch 14, 2014

利用这个小游戏可以学习一下ython3.3中tkinter的使用方法

# -*- coding: utf-8 -*-
import tkinter as tk
import sys
import random
import re
number = random.randint(0,1024)
running = True
num = 0
nmaxn = 1024
nminn = 0
def eBtnClose(event):
    root.destroy()
def eBtnGuess(event):
    global nmaxn
    global nminn
    global num
    global running
    #修改缺陷:用户答对了,提示标签还提示信息 Edit by Hongten 2013-09-09
    #即用户在答对了以后,提示标签不应该再随着用户点击'猜'按钮而变化
    if running:
        val_a = int(entry_a.get())
        if val_a == number:
            labelqval("恭喜答对了!")
            num+=1
            running = False
            numGuess()
        elif val_a < number:
            if val_a > nminn:
                nminn = val_a
                num+=1
                label_tip_min.config(label_tip_min,text=nminn)
            labelqval("小了哦")
        else:
            if val_a < nmaxn:
                nmaxn = val_a
                num+=1
                label_tip_max.config(label_tip_max,text=nmaxn)
            labelqval("大了哦")
    else:
        labelqval('你已经答对啦...')
def numGuess():
    if num == 1:
        labelqval('我靠!一次答对!')   
    elif num < 10:
        labelqval('= =十次以内就答对了牛逼。。。尝试次数:'+str(num))
    elif num < 50:
        labelqval('还行哦尝试次数:'+str(num))
    else:
        labelqval('好吧。。。。。您都试了超过50次了。。。。尝试次数:'+str(num))
def labelqval(vText):
    label_val_q.config(label_val_q,text=vText)   
root = tk.Tk(className="比大小游戏")
root.geometry("400x90+200+200")
line_a_tip = tk.Frame(root)
label_tip_max = tk.Label(line_a_tip,text=nmaxn)
label_tip_min = tk.Label(line_a_tip,text=nminn)
label_tip_max.pack(side = "top",fill = "x")
label_tip_min.pack(side = "bottom",fill = "x")
line_a_tip.pack(side = "left",fill = "y")
line_question = tk.Frame(root)
label_val_q = tk.Label(line_question,width="80")
label_val_q.pack(side = "left")
line_question.pack(side = "top",fill = "x")
line_input = tk.Frame(root)
entry_a = tk.Entry(line_input,width="40")
btnGuess = tk.Button(line_input,text="猜")
entry_a.pack(side = "left")
entry_a.bind('<Return>',eBtnGuess)
btnGuess.bind('<Button-1>',eBtnGuess)
btnGuess.pack(side = "left")
line_input.pack(side = "top",fill = "x")

line_btn = tk.Frame(root)
btnClose = tk.Button(line_btn,text="关闭")
btnClose.bind('<Button-1>',eBtnClose)
btnClose.pack(side="left")
line_btn.pack(side = "top")
labelqval("请输入0到1024之间任意整数:")
entry_a.focus_set()
print(number)
root.mainloop()
Python 相关文章推荐
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
Jul 04 Python
Python读写Json涉及到中文的处理方法
Sep 12 Python
Python 使用PIL numpy 实现拼接图片的示例
May 08 Python
Django实现学生管理系统
Feb 26 Python
python的依赖管理的实现
May 14 Python
详解利用Python scipy.signal.filtfilt() 实现信号滤波
Jun 05 Python
python3.6环境下安装freetype库和基本使用方法(推荐)
May 10 Python
使用pth文件添加Python环境变量方式
May 26 Python
python中的垃圾回收(GC)机制
Sep 21 Python
python使用smtplib模块发送邮件
Dec 17 Python
python中time包实例详解
Feb 02 Python
Python matplotlib绘制雷达图
Apr 13 Python
Python subprocess模块学习总结
Mar 13 #Python
用Python和MD5实现网站挂马检测程序
Mar 13 #Python
python操作数据库之sqlite3打开数据库、删除、修改示例
Mar 13 #Python
使用Python判断IP地址合法性的方法实例
Mar 13 #Python
Python 分析Nginx访问日志并保存到MySQL数据库实例
Mar 13 #Python
详解Python中的__init__和__new__
Mar 12 #Python
python文件和目录操作方法大全(含实例)
Mar 12 #Python
You might like
深入浅出讲解:php的socket通信原理
2016/12/03 PHP
PHP使用PDO调用mssql存储过程的方法示例
2017/10/07 PHP
JAVASCRIPT下判断IE与FF的比较简单的方式
2008/10/17 Javascript
不同的jQuery API来处理不同的浏览器事件
2012/12/09 Javascript
在JavaScript里嵌入大量字符串常量的实现方法
2013/07/07 Javascript
Jquery中的层次选择器与find()的区别示例介绍
2014/02/20 Javascript
javascript实现日期时间动态显示示例代码
2015/09/08 Javascript
JQuery+Ajax实现数据查询、排序和分页功能
2015/09/27 Javascript
Bootstrap实现响应式导航栏效果
2015/12/28 Javascript
JS实现兼容各种浏览器的获取选择文本的方法【测试可用】
2016/06/21 Javascript
关于JS变量和作用域详解
2016/07/28 Javascript
JavaScript for循环 if判断语句(学习笔记)
2017/10/11 Javascript
Vue精简版风格概述
2018/01/30 Javascript
ElementUI Tag组件实现多标签生成的方法示例
2019/07/08 Javascript
一篇文章弄懂javascript中的执行栈与执行上下文
2019/08/09 Javascript
vue 的 solt 子组件过滤过程解析
2019/09/07 Javascript
Vue的全局过滤器和私有过滤器的实现
2020/04/20 Javascript
微信跳一跳辅助python代码实现
2018/01/05 Python
python 数字类型和字符串类型的相互转换实例
2018/07/17 Python
python对html过滤处理的方法
2018/10/21 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
解决TensorFlow程序无限制占用GPU的方法
2020/06/30 Python
使用CSS3制作响应式导航菜单的方法
2015/07/12 HTML / CSS
Canvas环形饼图与手势控制的实现代码
2019/11/08 HTML / CSS
英国汽车座椅和婴儿车购物网站:Uber Kids
2017/04/19 全球购物
澳大利亚在线高跟鞋商店:Shoe Me
2019/11/19 全球购物
审核会计岗位职责
2013/11/08 职场文书
大学生就业推荐信范文
2013/11/29 职场文书
酒吧创业计划书
2014/01/18 职场文书
个人授权委托书范本
2014/09/14 职场文书
2015年党员创先争优承诺书
2015/01/22 职场文书
2015高三毕业寄语赠言
2015/02/27 职场文书
英语通知范文
2015/04/22 职场文书
捐书活动倡议书
2015/04/27 职场文书
2016年元旦致辞
2015/08/01 职场文书
python编程简单几行代码实现视频转换Gif示例
2021/10/05 Python