python写计算器加减乘除是什么键_用PYTHON2做个计算器,哪位高手能用Python写出计算器的代码,需要加减乘除和退出,谢谢!...

粗略的写了一个,没有包含对输入的检查。# coding: utf-8

'''

计算器

'''

operator = {

'a': ['a for addition','+'],

'b': ['b for subtraction','-'],

'c': ['c for multiplication','*'],

'd': ['d for division','/'],

'z': ['z for exit',None]

}

def DisplayOperationMenu():

for key, data in operator.items():

print data[0]

print

def GetInputs():

input_data = raw_input('Input two numbers (format -> number1,number2): ')

return (int(input_data.split(',')[0]),int(input_data.split(',')[1]))

def GetOperator():

input_operator = raw_input('Select one of the above operates: ')

try:

return operator[input_operator][1]

except:

return 'SKIP'

def Calculator(parameters, operator):

strline = '{0}{2}{1}'.format(parameters[0],parameters[1],operator)

try:

print '{}={}'.format(strline, eval(strline))

except:

print ''

print

while True:

DisplayOperationMenu()

p = GetOperator()

if p == 'SKIP':

print 'Incorrect selection!'

continue

elif p is None:

break

else:

Calculator(GetInputs(), p)

测试:

运行的时候选择d

输入100,20

追答 : Sorry,漏了一条@@

增加一个函数处理数据的大小。...

def GetInputs():

input_data = raw_input('Input two numbers (format -> number1,number2): ')

return (DataValidation(int(input_data.split(',')[0])),DataValidation(int(input_data.split(',')[1])))

def DataValidation(number):

return number if number>1 and number<99 else None

...

while True:

DisplayOperationMenu()

p = GetOperator()

if p == 'SKIP':

print 'Incorrect selection!'

continue

elif p is None:

break

else:

q = GetInputs()

if q == (None, None):

print 'Incorrect inputs!\n'

else:

Calculator(q, p)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值