温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何使用Python实现计算器功能

发布时间:2021-04-06 11:00:51 来源:亿速云 阅读:205 作者:小新 栏目:开发技术

这篇文章将为大家详细讲解有关如何使用Python实现计算器功能,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。

源码:

# -*- coding:utf-8 -*- #! python2 from tkinter import * __author__ = 'tianshl' __date__ = '2017/10/16' class Application(Frame):  def __init__(self):   Frame.__init__(self)   self.grid()   self.mem = ''    # 内存中的数据   self.opt = ''    # 操作符   self.display = StringVar() # 显示的数据   self.display.set('0')  # 初始值   self.need_cls = False  # 是否需要清屏   self.create_widgets()  # 清空  def clear(self):   self.mem = ''   self.display.set('0')  # 取反  def negative(self):   self.display.set(eval('-' + self.display.get()))  # 四则运算  def option(self, opt):   if not self.need_cls:    self.calculate()   self.opt = opt   self.need_cls = True   self.mem = self.display.get()  # 计算结果  def calculate(self):   if self.opt:    try:     self.display.set(eval(self.mem + self.opt + self.display.get()))    except Exception:     self.display.set('错误')     self.need_cls = True    self.opt = ''    self.mem = ''  # 百分比  def percent(self):   base = float(self.mem or 1) / 100   display = eval('{}*{}'.format(self.display.get(), base))   int_display = int(display)   display = int_display if display == int_display else display   self.display.set(display)   self.need_cls = True  # 输入  def input(self, key):   if self.need_cls:    self.display.set('0')    self.need_cls = False   display = self.display.get()   if display == '0' and key != '.':    self.display.set(key)   else:    if '.' in display and key == '.':     return    self.display.set(display + key)  # 创建组件  def create_widgets(self):   # 显示框   Entry(self, textvariable=self.display, state="readonly", width=35).grid(    row=0, column=0, columnspan=4)   # 键盘   keyboards = [    ['C', '+/-', '%', '/'],     ['7', '8', '9', '*'],     ['4', '5', '6', '-'],    ['1', '2', '3', '+'],    ['0', '.', '=']   ]   for row, keys in enumerate(keyboards):    row_num = 3 + row    for col, key in enumerate(keys):     if key == 'C':      command = self.clear     elif key == '+/-':      command = self.negative     elif key == '%':      command = self.percent     elif key in ['+', '-', '*', '/']:      command = lambda s=key: self.option(s)     elif key == '=':      command = self.calculate     else:      command = lambda s=key: self.input(s)     bt = Button(self, text=key, command=command, width=6)     bt.grid(row=row_num, column=col) app = Application() # 设置窗口标题: app.master.title('www.jb51.net - 计算器') # 设置窗口尺寸/位置 app.master.geometry("326x170+200+200") # 设置窗口不可变 app.master.resizable(width=False, height=False) # 主消息循环: app.mainloop()

运行效果:

如何使用Python实现计算器功能

关于“如何使用Python实现计算器功能”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI