Python Tkinter学习之计算器

初学Python tkinter,利用目前所学编写一个简单的计算器练习一下。

预期效果:

1.能够实现加减乘除运算,

2.只能输入数字

3.通过按钮选择进行哪种运算。

4.结果框不能修改,智能复制

5.按清除按钮能够清除所有内容

from  tkinter import *

count = Tk()
count.title("纯醪八盅@计算器")

def clear():
    v1.set("")
    v2.set("")
    v3.set("")
def calc():
    print(v1.get(),v2.get())
    print(v4.get())
    if v4.get()=="+":
        result = int(v1.get()) + int(v2.get())
    elif v4.get()=="-":
        result = int(v1.get()) - int(v2.get())
    elif v4.get()=="x":
        result = int(v1.get()) * int(v2.get())
    else:
        result = int(v1.get()) / int(v2.get())
    v3.set(result)

def test(content):
    return content.isdigit()

frame = Frame(count)
frame.pack(padx=10,pady=10)

v1=StringVar()
v2=StringVar()
v3=StringVar()

testEnt = count.register(test)

entry_1 = Entry(frame,width = 10,textvariable=v1,validate="key",validatecommand=(testEnt,"%P"))#
entry_1.grid(row=0,column=0,padx=5,pady=5)

v4=StringVar()
v4.set("+")
label = Label(frame,textvariable=v4).grid(row=0,column=1,padx=5,pady=5)

entry_2 = Entry(frame,width = 10,textvariable=v2,validate="key",validatecommand=(testEnt,"%P"))
entry_2.grid(row=0,column=2,padx=5,pady=5)

label2 = Label(frame,text="=").grid(row=0,column=3,padx=5,pady=5)

entry_3 = Entry(frame,width = 10,textvariable=v3,state ="readonly")#显示结果的区域只读,不可修改
entry_3.grid(row=0,column=4,padx=5,pady=5)
def set1():
    v4.set("+")
def set2():
    v4.set("-")
def set3():
    v4.set("x")
def set4():
    v4.set("/")
button1 = Button(frame,text="+",command = set1).grid(row=1,column=1,padx=5,pady=5)
button2 = Button(frame,text="-",command = set2).grid(row=1,column=2,padx=5,pady=5)
button3 = Button(frame,text="x",command = set3).grid(row=1,column=3,padx=5,pady=5)
button4 = Button(frame,text="/",command = set4).grid(row=1,column=4,padx=5,pady=5)

button5 = Button(frame,text="清空",command = clear).grid(row=2,column=1,padx=5,pady=5)
button6 = Button(frame,text="=",command=calc).grid(row=2,column=3,padx=5,pady=5)

mainloop()

效果截图:

时间: 2024-10-12 09:09:26

Python Tkinter学习之计算器的相关文章

python tkinter学习

Downloading the module: sudo apt-get install python-tk simple example: #!/usr/bin/python # -*- coding: utf-8 -*- """ ZetCode Tkinter tutorial This script shows a simple window on the screen. author: Jan Bodnar last modified: January 2011 we

Python Tkinter学习(三)

Python初学--窗口视窗Tkinter 1.1 什么是 Tkinter Python自带的可编辑的GUI界面,是一个图像窗口. Tkinter是使用 python 进行窗口视窗设计的模块.简单的构造,多平台,多系统的兼容性, 能让它成为让你快速入门定制窗口文件的好助手.它在 python 窗口视窗模块中是一款简单型的.所以用来入门,熟悉窗口视窗的使用,非常有必要. tkinter 的窗口部件 2.1 Label & Button 标签和按钮 窗口主体框架 每一个tkinter应用的主体框架都

Python Tkinter 学习成果:点歌软件music

笔者工作业余时间也没什么爱好,社交圈子也小,主要娱乐就是背着自己带电瓶的卖唱音响到住地附近找个人多的位置唱唱KtV. 硬件上点歌就用笔记本电脑,歌曲都是网上下载的mkv格式的含有两个音轨的视频.因此点歌软件成了笔者的需求. 点歌软件需求极简单: 读磁盘上的目录取全部music,双击则调用播放器播放music. 自己常唱的歌曲可以选到自选歌曲列表. 支持按简拼搜索music 之前已经用多种开发工具写过,这次逢学习python的机会用它再写一个python版. 软件界面如下: 双击启动播放器. 就代

Python Tkinter学习(1)——第一个Tkinter程序

注:本文可转载,转载请注明出处:http://www.cnblogs.com/collectionne/p/6885066.html. Tkinter介绍 Python支持多个图形库,例如Qt.wxWidgets,等等.但是Python的标准GUI库是Tkinter.Tkinter是Tk Interface的缩写.Python提供了tkinter包,里面含有Tkinter接口. 开始写程序 这一节,我们将会写一个只有一个Quit按钮的Tkinter程序. 要使用Tkinter,需要首先导入tki

Python tkinter 学习记录(一) --label 与 button

最简的形式 from tkinter import * root = Tk() # 创建一个Tk实例 root.wm_title("标题") # 修改标题 root.mainloop() # 进入root的事件循环 运行结果 label标签的使用 from tkinter import * root = Tk() root.wm_title("标题") w1 = Label(root, text="~~~~~~1号标签~~~~~~") w2 =

Python Tkinter 学习笔记(二)Hello_again

#hello_again.py from tkinter import * class App: def __init__(self,master): frame = Frame(master) frame.pack() self.button = Button( frame, text="关闭",fg="blue",command=frame.quit )#也可以用foreground代替fg(缩写) self.button.pack(side=LEFT) sel

Python Tkinter 学习笔记(第一个简单窗口的创建)

#from Tkinter import * """ 需要使用小写的tkinter """ from tkinter import * root = Tk() w = Label(root,text="Hello fudianheg") w.pack() root.mainloop() """ import的(tkinter)包含了所有的类,函数还有其它TK toolkit工作需要的东西大多数情况

python tkinter学习——布局

目录 一.pack() 二.grid() 三.place() 四.Frame() 正文 布局 一.pack() pack()有以下几个常用属性: side padx pady ipadx ipady fill expand 1,side side属性有四个可选值:'top'.'bottom'.'left'.'right',分别表示将控件位置设在窗口顶部中心.底部中心.左边中心.右边中心.side默认值为'top'. 2,padx.pady.ipadx.ipady 这四个属性分别设置控件水平方向外

基于Tkinter用50行Python代码实现简易计算器

Tkinter一般是python自带的,所以代码不需要其他组件,本程序是在python2.7版本实现的. 主要涉及了tkinter的使用,函数定义和调用,匿名函数的使用,类成员函数定义等python基础知识,适合新手学习. 代码如下: from Tkinter import * #创建横条型框架 def frame(root, side): w = Frame(root) w.pack(side = side, expand = YES, fill = BOTH) return w #创建按钮