Python:教你三种方法写出没有GUI的计算器:基础、函数、面向对象

话不多说,本文章纯属博主突发奇想,想起我原先闲着没事曾经试过用多种方法编写没有GUI的计算器。下面展示的写法或许与正常常见的写法有出入。因为我采用的是功能选择形式(即,通过输入数字来决定进行哪一种运算)
下面就来说一说这四种方法:

最简单的写法

下面展示的是计算器最简单的写法(四种运算)

while(True):
	number1 = float(input("请输入第一个想计算的数"))
	number2 = float(input("请输入第二个想计算的数"))
	number3 = int(input("请选择功能:1 for + .2 for - .3 for 					*. 4 for /"))
	if number3 == 1:
		result=number1+number2
		print("the rusult is "+result)
	elif number3 == 2:
		result=number1-number2
		print("the rusult is " + result)
	elif number3 == 3:
		result-number1*number2
		print("the rusult is " + result)
	elif number3 == 4:
		result=number1/number2
		print("the rusult is " + result)
	elif number3 == 4 and number2==0
		print("Error") 	
	else:
		print("Error")

上面就是最简单的计算器的源码,很长时间没碰python了,如果有bug评论区指出

函数法

下面要介绍的就是利用python的函数实现计算器功能

def Add(add1,add2):		
	result = add1+add2
	print("the rusult is " + result)
def Subtraction(subtraction1,subtraction2):
	result2 = subtraction1-subtraction2
	print("the result is: " + result2)
def Multiplication(multiplication1,multiplication2):
	result3 = multiplication1*multiplication2
	print("the result is: " + result3)
def Division(division1,division2):
	result4=division1/division2
	print("the result is: " + result4)
while(True):
	Num1 = float(input("请输入第一个想计算的数"))
	Num2 = float(input("请输入第二个想计算的数"))
	Num3 = int(input("请选择运算功能:1 for+.2 for-.3 for*.4 for/"))
	if Num3 == 1:
		Add(Num1,Num2)
	elif Num3 == 2:
		Subtraction(Num1,Num2)
	elif Num3 == 3:
		Division(Num1,Num2)
	elif Num3 == 4 and Num2 == 0:
		print("Error")
	elif Num3 == 4:
		Multiplication(Num1,Num2)	 	

面向对象编程法

下面介绍博主认为最复杂的一种写法:面向对象编程思想实现计算器功能

class Add:
	def __init__(self):
		pass
	def add(self,add1,add2):
		return add1+add2	
class Subtraction:
	def __init__(self):
		pass
	def subtraction(self,subtraction1,subtraction2)return subtraction1-subtraction2
class Multiplication:
	def __init__(self):
		pass
	def multiplication(self,multiplication1,multiplication2):
		return multiplication1*multiplication2	
class Division:	
	def __init__(self):
		pass
	def division(self,division1,division2):
		return 	division1/division2
while(True):
	Num1=float(input("请输入第一个想计算的数"))
	Num2=float(input("请输入第二个想计算的数"))
	Num3=int(input("请选择功能,1for+.2for-.3for*.4for/"))
	if Num3 == 1:
		resultAdd=Add.add(Num1,Num2)
		print("the result is:" + resultAdd)
	elif Num3 == 2:
		resultSubtraction=Subtraction.subtraction(Num1,Num2)
		print("the result is: " + resultSubtraction)
	elif Num3 == 3:
		resultMultiplication=Multiplication.multiplication(Num1,Num2)
		print("the result is: " + resultMultiplication)
	elif Num3 == 4 and Num2 == 0:
		print("Error")
	elif Num3 == 4:
		resultDivision=Division.division(Num1,Num2)
		print("the result is: " + resultDivision)
	else:
		print("Error")											

以上便是三种计算器的写法,如有问题可在评论区说出来,博主很长时间没碰python了,如有bug请评论区指出。
博主建了一个信息技术交流群,各位如有兴趣可进群交流,无论小白还是大佬。此群为QQ群,群号为:1044573456,如有关于此群问题可联系我,或者联系我的徒弟(也是本群管理)昵称为:幽幻少年。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Rf..

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值