1

私が行ったことは次のとおりです。アイデアは、ユーザーが2つの数値を加算、減算、除算、または乗算するかどうかに応じて、2つの数値から結果を計算できるようにすることです。

    print 'Welcome to my calculator program'
    Equation = raw_input('You want to add, subtract, divide or multiply? '
    firstno = raw_input ('Please enter first number ')
    secondno = raw_input('Please enter second number ')
    F1 = int(firstno)
    F2 = int(secondno)
    F3 = F1 + F2
    print F1, '+' ,F2, '=' ,F3

私は実際にはユーザーの入力に応答しているのではなく、ユーザーがaddを入力すると想定しています。ユーザーが加算などではなく減算したい場合に異なる反応をするようにコーディングするにはどうすればよいですか?助けを求めるTnks。

4

2 に答える 2

4

辞書ディスパッチとoperatorモジュール内のいくつかの関数をベースとして使用できます。

import operator as op

operations = {
    'add': {'func': op.add, 'char': '+'},
    'minus': {'func': op.sub, 'char': '-'}
}

次に、キーワードを検索して関数を適用し、方程式を表示します。

print F1, operations[Equation]['char'], F2, '=', operations[Equation]['func'](F1, F2)
于 2012-10-16T13:30:58.067 に答える
0

def start():

#main input variable to get a sign to do
calculator = input('What would you like to calculate? (x, /, +, -): ')
#gets 2 #'s to multiply, add, subtract, or divide 
if (calculator) == ('+'):
    add = input('what is the frist number would you like to add? ')
    addi = input('what is the second number would you like to add? ')
elif (calculator) ==('-'):
    sub = input('what is the first number would you like to subtract? ')
    subt = input('what is the second number you would like to subtract? ')
elif (calculator) == ('/'):
    div = input('what is the first number would you like to divide? ')
    divi = input('what is the second number would you like to divide? ')
elif (calculator) == ('x'):
    mult = input('what is the first number would you like to multiply? ')
    multi = input('what is the second number would you like to multiply? ')

#failsafe if done incorrect
elif (calculator) != ('x', '/', '-', '+'):
    print('try again')
    return


#adds 2 inputted #'s
if calculator == '+' :
    sumAdd = float (add) + float (addi)
    print(sumAdd)
#multiplies the 2 inputted #'s
elif calculator == 'x' :
    sumMul =  float (mult) * float (multi)
    print(sumMul)
#divides the 2 inputted #'s
elif calculator == '/' :
    sumDiv = float (div) / float (divi)
    print(sumDiv)
#subtracting the 2 inputted #'s
elif calculator == '-' :
    sumSub = float (sub) - float (subt)
    print(sumSub)

#returns to top of code to do another setup


return

始める()

私の計算機があります数字にジャンプする前にあなたの+、-、*、/の入力を覚えておいてください

于 2019-01-12T22:26:33.973 に答える