前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >python学习之tkinter模块-猜数字游戏

python学习之tkinter模块-猜数字游戏

作者头像
烤粽子
发布2021-07-07 19:18:27
1.1K0
发布2021-07-07 19:18:27
举报

环境:Ubuntu 14.04 LTS , pyhton3.4

Tkinter模块是Python的标准GUI库。

在学习tkinter模块时,做一个小游戏,学以致用,同时方便自己理解。

1.首先看整体界面

代码语言:javascript
复制
import tkinter
import tkinter.messagebox
import random

root =tkinter.Tk()
root.minsize(350,260)
root.title('猜数字游戏')

导入tkinter模块及其他模块。

建一个界面,确定大小,名字。

2.Label 用以显示文字和图片。

Entry文本框,显示单行。Text 文本框,显示多行。

3.使用messageBox发送弹窗

在文本框里输入自己的名字后,点击确定,跳出如图所示弹窗。

4. 在文本框中输入所要猜的数字,点击"Guess"检验所猜的数字是否正确。

代码语言:javascript
复制
def check_num():
    guess=text_guess.get()
    guess=int(guess)
    if guess>number:
        tkinter.messagebox.showinfo("height","Your guess is too height.")
    if guess < number:
        tkinter.messagebox.showinfo("low","Your guess is too low.")
    if guess == number:
        tkinter.messagebox.showinfo("good","Good job!")

依据判断会有三种不同结果,如上图所示。

完整代码:

代码语言:javascript
复制
#!/usr/bin/env python3

import tkinter
import math
import tkinter.messagebox
import random

root =tkinter.Tk()
root.minsize(350,260)
root.title('猜数字游戏')

number=random.randint(1,20)

def say_hello():
    print('hello,world!')

def send_low():
    tkinter.messagebox.showinfo("messagebox","Your guess is too low.")

def check_num():
    guess=text_guess.get()
    guess=int(guess)
    if guess>number:
        tkinter.messagebox.showinfo("height","Your guess is too height.")
    if guess < number:
        tkinter.messagebox.showinfo("low","Your guess is too low.")
    if guess == number:
        tkinter.messagebox.showinfo("good","Good job!")

def btn_confirm():
    myName=text_name.get()
    tkinter.messagebox.showinfo("name",'Well,'+myName+',I am thinking of a number between 1 and 20.')

#name
label=tkinter.Label(root,text="Wellcome to our game!")
label.pack()
label_name=tkinter.Label(root,text="What's your name?")
label_name.place(x=10,y=60)
text_name=tkinter.Entry(root,width=20)
text_name.place(x=10,y=90)
btnOK=tkinter.Button(root,text="OK",command=btn_confirm)
btnOK.place(x=200,y=90,height=28)

 #input 
label_guess=tkinter.Label(root,text='Take a guess:')
label_guess.place(x=10,y=150)
text_guess=tkinter.Entry(root,width=10)
text_guess.place(x=90,y=150)
btnCheck=tkinter.Button(root,text='Guess',command=check_num)
btnCheck.place(x=200,y=150,width=45,height=28)

root.mainloop()

一些常用的tkinter模块参数见这里:https://www.cnblogs.com/aland-1415/p/6849193.html

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-04-17 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档