python实现计算器的目的_Python实现的计算器功能示例

本文实例讲述了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()

运行效果:

9ebe3826aa1537db9d1a6290e2ac5a3f.png

PS:这里再为大家推荐几款计算工具供大家进一步参考借鉴:

在线一元函数(方程)求解计算工具:http://tools.jb51.net/jisuanqi/equ_jisuanqi

科学计算器在线使用_高级计算器在线计算:http://tools.jb51.net/jisuanqi/jsqkexue

在线计算器_标准计算器:http://tools.jb51.net/jisuanqi/jsq

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 好的,下面是Python实现计算器的四则运算功能的基本步骤: 1. 从用户那里获取要计算的表达式。 使用 input() 函数来获取用户输入的表达式。 2. 将表达式转换为可计算的形式。 使用 eval() 函数来计算表达式的值。在这个过程中,Python会自动将字符串类型的表达式转换为可执行的代码,并返回其计算结果。 3. 实现用户输入的表达式中的四则运算。 在 Python 中,加法用 "+" 表示,减法用 "-" 表示,乘法用 "*" 表示,除法用 "/" 表示。您可以使用这些符号来实现四则运算。 4. 输出计算结果。 将计算结果打印出来,使用 print() 函数来实现。 以下是一个基本的 Python 计算器示例代码: ``` # 从用户输入中获取表达式 expr = input("请输入要计算的表达式:") # 将表达式转换为可计算的形式并计算结果 result = eval(expr) # 输出计算结果 print("计算结果为:", result) ``` 请注意,使用 eval() 函数可以很方便地计算表达式,但也有安全问题。如果用户输入的表达式中包含了恶意代码,那么可能会对计算器程序造成危害。因此,在实际应用中,我们需要对用户输入的内容进行合理的检查和过滤,以确保计算器程序的安全性。 ### 回答2: Python是一种常用的编程语言,可以用来实现多种功能,其中之一是实现四则运算计算器。下面是一个简单的计算器实现方法,包含加减乘除四个基本运算。 1. 输入数字和运算符号:首先需要从用户那里获取需要运算的数字和运算符号,并进行判断,判断运算符号是加、减、乘、除中哪一个。 2. 定义运算函数:在得到数字和运算符号后,需要定义四个函数来实现加、减、乘、除四种运算操作。 3. 调用运算函数:在定义完四个运算函数后,需要根据用户输入的运算符号调用相应的运算函数,进行相应的运算。 4. 输出结果:最后,将计算结果输出给用户,显示在屏幕上。 下面是一个示例代码,可以实现这个功能: ``` def add(x, y): return x + y def subtract(x, y): return x - y def multiply(x, y): return x * y def divide(x, y): return x / y num1 = float(input("请输入第一个数字:")) operator = input("请输入运算符号(+、-、*、/):") num2 = float(input("请输入第二个数字:")) if operator == "+": print("计算结果:", add(num1, num2)) elif operator == "-": print("计算结果:", subtract(num1, num2)) elif operator == "*": print("计算结果:", multiply(num1, num2)) elif operator == "/": print("计算结果:", divide(num1, num2)) else: print("输入错误,请输入正确的运算符号。") ``` 这个代码首先定义了四个函数,分别为加、减、乘、除四种运算函数。然后从用户那里获取需要运算的数字和运算符号,并判断输入的运算符号是哪一个。根据不同的运算符号,调用相应的运算函数,并将计算结果输出给用户。如果用户输入的不是四种基本运算符号,则会输出错误提示。 以上就是用Python实现计算器四则运算的方法,通过以上代码可以清晰地看到四个基本运算函数的实现过程,以及如何根据用户输入的运算符号来调用相应的运算函数。由于Python语言简单易懂,因此可以用来实现多种功能,包括实现这个计算器。 ### 回答3: Python是一种高级编程语言,它易于学习和使用,同时它也是一种功能强大的语言,可以用来开发各种类型的应用程序,包括计算器应用程序。Python可以通过使用基本的算术运算运算符来实现计算器的四则运算功能。 在Python中,可以使用加(+)、减(-)、乘(*)、除(/)和取模(%)等基本算术运算符来完成计算。例如,可以使用以下代码将两个数字相加: ```python num1 = input("请输入第一个数字: ") num2 = input("请输入第二个数字: ") # 将输入的字符串类型的数字转换为整数类型 num1 = int(num1) num2 = int(num2) result = num1 + num2 print("两个数字的和为: ", result) ``` 以上代码首先通过input()函数获取用户输入的两个数字,然后将这些数字转换为整数类型,并使用加(+)运算符将它们相加,最后将结果打印出来。其他基本运算符的用法也类似。 注意:在进行除法运算时,需要注意分母是否为零的情况,避免程序因为除以0而出现错误。 实现计算器的四则运算功能,需要根据用户输入的运算符(加、减、乘、除)来判断执行哪种运算,代码可以如下: ```python num1 = input("请输入第一个数字: ") num2 = input("请输入第二个数字: ") operator = input("请输入运算符(+、-、*、/):") # 将输入的字符串类型的数字转换为浮点数类型 num1 = float(num1) num2 = float(num2) if operator == '+': result = num1 + num2 elif operator == '-': result = num1 - num2 elif operator == '*': result = num1 * num2 elif operator == '/': if num2 == 0: print("除数不能为零!") else: result = num1 / num2 else: print("输入有误,请输入正确的运算符!") print("运算结果为:", result) ``` 以上代码首先获取用户输入的两个数字和运算符,然后将这些数字转换为浮点数类型,并根据运算符执行相应的运算。其中,当运算符是除法运算符时,需要判断除数是否为零。最后,将运算结果打印出来。 以上就是使用Python实现计算器的四则运算功能实现过程。需要注意的是,在编写程序时,要尽可能考虑到各种异常情况,如除数为零、输入有误等情况,以提高程序的健壮性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值