python计算器基础知识_Python基础入门-实现计算器多种姿势

在Python中,虽然定义一个函数只需要def关键字,但是他能实现多种功能和用途,比如今天我们讲解的这几种方式。如何使用函数实现一个计算器的功能呢?当然,实现计算器的方式有很多种,我们举几个比较典型的例子,借助函数来实现就比较容易。我们使用三种方式实现加法计算器的应用:

1.IF嵌套语句  2.def函数实现  3.面向对象的实现方式

先来看第一种:(通过if嵌套语句实现一个计算器功能,我一直觉得这种写法写起来是比较简洁,规范,明朗的)首先,先使用函数定义加、减、乘、除这四种计算方法。

def add(a,b):

return a+b

def sub(c,d):

return c-d

def multi(e,f):

return e-f

def divide(g,h):

return g / h

第二步:选择一下我们想要计算的方法:是加法还是减法还是乘法还是除法?

print "请选择你要进行的运算: + - * /"

print "A.加法"

print "B.减法"

print "C.乘法"

print "D.除法"

第三步:输入数字作为函数的入参,为后面IF语句实现加减乘除运算。

choice = input("请输入A/B/C/D:")

letter1 = int(input("请输入第一个数字:"))

letter2 = int(input("请输入第二个数字:"))

第四步:使用IF语句实现函数的调用以及入参,实现计算器功能。

if choice == "A":

print letter1,'+',letter2,'=',add(letter1,letter2)

elif choice == "B":

print letter1,'-',letter2,'=',sub(letter1,letter2)

elif choice == "C":

print letter1,'*',letter2,'=',multi(letter1,letter2)

elif choice == "D":

print letter1,"/",letter2,'=',divide(letter1,letter2)

else:

print '没有此选项'

完整代码如下:

def add(a,b):

return a+b

def sub(c,d):

return c-d

def multi(e,f):

return e-f

def divide(g,h):

return g / h

print "请选择你要进行的运算: + - * /"

print "A.加法"

print "B.减法"

print "C.乘法"

print "D.除法"

choice = input("请输入A/B/C/D:")

letter1 = int(input("请输入第一个数字:"))

letter2 = int(input("请输入第二个数字:"))

if choice == "A":

print letter1,'+',letter2,'=',add(letter1,letter2)

elif choice == "B":

print letter1,'-',letter2,'=',sub(letter1,letter2)

elif choice == "C":

print letter1,'*',letter2,'=',multi(letter1,letter2)

elif choice == "D":

print letter1,"/",letter2,'=',divide(letter1,letter2)

else:

print '没有此选项'

第二种实现方式,使用函数实现,我们在看下面的实现方式:

1先定义加减乘除四个方法

def add(a,b):

return a+b

def sub(c,d):

return c-d

def multi(e,f):

return e-f

def divide(g,h):

return g / h

2.函数一步实现计算器功能

def cacultor():

option = input("请选择:1+,2-,3*,4/")

num1 = input('请输入第一个数字:')

num2 = input('请输入第二个数字:')

if option == 1:

print add(num1,num2)

elif option == 2:

print sub(num1,num2)

elif option == 3:

print multi(num1,num2)

elif option == 4:

print divide(num1,num2)

else:

print '没有此选项'

cacultor()

这种方式是直接把定义好的参数定义到了函数内部。对比第一种代码量上简洁了不少。

完整代码如下

1.定义加减乘除

2.选择加减乘除

3.函数实现功能

def add(a,b):

return a+b

def sub(c,d):

return c-d

def multi(e,f):

return e-f

def divide(g,h):

return g / h

def cacultor():

option = input("请选择:1+,2-,3*,4/")

num1 = input('请输入第一个数字:')

num2 = input('请输入第二个数字:')

if option == 1:

print add(num1,num2)

elif option == 2:

print sub(num1,num2)

elif option == 3:

print multi(num1,num2)

elif option == 4:

print divide(num1,num2)

else:

print '没有此选项'

cacultor() #调用整个函数运行

第三种的实现方式:使用面向对象的过程实现计算器功能。

class Jisuan(object):

def __init__(self,a,b): #初始a,b两个参数

self.a = int(a)

self.b = int(b)

def add(self):

if type(self.a) != int or type(self.b) != int:

raise Exception('a,b必须为整型') #如果输入的不是整型 就抛出错误

return self.a + self.b

def sub(self):

if type(self.a) != int or type(self.b) != int:

raise Exception('a,b必须为整型')

return self.a - self.b

def mutil(self):

if type(self.a) != int or type(self.b) != int:

raise Exception('a,b必须为整型')

return self.a * self.b

def divide(self):

if type(self.a) != int or type(self.b) != int:

raise Exception('a,b必须为整型')

if self.b == 0: #对除数进行判断 除数不能为0

raise Exception('除数不能为0',self.b)

return self.a / self.b

if __name__ == "__main__":

test = Jisuan(55,20) #实例化对象 test

print test.add() #引用自身加法

print test.sub() #引用自身减法

print test.mutil() #引用自身乘法

print test.divide() #引用自身除法

以上就是实现计算器的几种方式。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值