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实现分析apache和nginx日志文件并输出访客ip列表的方法
Apr 04 Python
Python 迭代器工具包【推荐】
May 06 Python
Apache如何部署django项目
May 21 Python
Python WXPY实现微信监控报警功能的代码
Oct 20 Python
python队列queue模块详解
Apr 27 Python
python实现求特征选择的信息增益
Dec 18 Python
Python CSV文件模块的使用案例分析
Dec 21 Python
python_mask_array的用法
Feb 18 Python
python3.5的包存放的具体路径
Aug 16 Python
如何利用Python写个坦克大战
Nov 18 Python
python 模拟登陆163邮箱
Dec 15 Python
学点简单的Django之第一个Django程序的实现
Feb 24 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实现的Redis多库选择功能单例类
2017/07/27 PHP
使用PHPStorm+XDebug搭建单步调试环境
2017/11/19 PHP
php-app开发接口加密详解
2018/04/18 PHP
几个比较经典常用的jQuery小技巧
2010/03/01 Javascript
JavaScript高级程序设计 DOM学习笔记
2011/09/10 Javascript
formStorage 基于jquery的一个插件(存储表单中元素的状态到本地)
2012/01/20 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
2015/04/06 Javascript
Node.js事件驱动
2015/06/18 Javascript
TypeScript 中接口详解
2015/06/19 Javascript
纯javascript代码实现计算器功能(三种方法)
2015/09/07 Javascript
jquery判断checkbox是否选中及改变checkbox状态的实现方法
2016/05/26 Javascript
利用JQuery阻止事件冒泡
2016/12/01 Javascript
jQuery树插件zTree使用方法详解
2017/05/02 jQuery
React简单介绍
2017/05/24 Javascript
Web技术实现移动监测的介绍
2017/09/18 Javascript
详解vue-cli中的ESlint配置文件eslintrc.js
2017/09/25 Javascript
JS实现基本的网页计算器功能示例
2020/01/16 Javascript
Python深入学习之闭包
2014/08/31 Python
Python中的字符串操作和编码Unicode详解
2017/01/18 Python
Python验证文件是否可读写代码分享
2017/12/11 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
python遍历一个目录,输出所有的文件名的实例
2018/04/23 Python
Python lxml解析HTML并用xpath获取元素的方法
2019/01/02 Python
Python closure闭包解释及其注意点详解
2019/08/28 Python
Django实现前台上传并显示图片功能
2020/05/29 Python
python爬虫请求头设置代码
2020/07/28 Python
CSS3截取字符串实例代码【推荐】
2018/06/07 HTML / CSS
html5调用摄像头功能的实现代码
2018/05/07 HTML / CSS
小天鹅官方商城:LittleSwan
2017/06/16 全球购物
PHP面试题及答案二
2015/05/23 面试题
教师研修随笔感言
2014/01/23 职场文书
法院干警四风问题个人对照检查材料思想汇报
2014/10/07 职场文书
民间借贷被告代理词
2015/05/23 职场文书
2015国庆节感想
2015/08/04 职场文书
MongoDB安装使用并实现Python操作数据库
2021/06/28 MongoDB
Nginx如何限制IP访问只允许特定域名访问
2022/07/23 Servers