用python缩短计算器

2024-10-04 07:27:27 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经设法用Python创建了一个小型计算器,但是我试图缩短代码,但没有成功。有人能帮忙吗?你知道吗

elif queencommand == "/calc addition" :
    num1 = input("Enter first number")
    num2 = input("Enter second number")
    Answer = (int(num1) + int(num2))
    input(Answer)
elif queencommand == "/calc subtraction" :
    num1 = input("Enter first number")
    num2 = input("Enter second number")
    Answer = (int(num1) - int(num2))
    input(Answer)
elif queencommand == "/calc multiplication" :
    num1 = input("Enter first number")
    num2 = input("Enter second number")
    Answer = (int(num1) * int(num2))
    input(Answer)
elif queencommand == "/calc division" :
    num1 = input("Enter first number")
    num2 = input("Enter second number")
    Answer = (int(num1) / int(num2))
    input(Answer)

我也不能同时做两个手术。你知道吗


Tags: 代码answernumberinputcalc计算器intfirst
2条回答

使用^{} module中的函数或您自己定义的简单函数进行计算,然后将操作名称从queencommand字符串映射到这些函数:

import operator

ops = {
    'addition': operator.add,
    'subtraction': operator.sub,
    'multiplication': operator.mul,
    'division': operator.truediv
}
if queencommand.startswith("/calc"):
    operation = queencommand.partition(' ')[-1]
    if operation in ops:
        num1 = input("Enter first number")
        num2 = input("Enter second number")
        Answer = ops[operation](int(num1), int(num2))

operator.add可以替换为lambda a, b: a + b,等等。如果您不想使用模块进行这些操作。你知道吗

这是一台成熟的计算器。看看是否有帮助:

    def multiplication():
      num1 = int(input("First #: "))
      num2 = int(input("Second #: "))
      ans = num1 * num2
      print(ans)

    def addition():
      num1 = int(input("First #: "))
      num2 = int(input("Second #: "))
      ans = num1 + num2
      print(ans)


    def subtraction():
      num1 = int(input("First #: "))
      num2 = int(input("Second #: "))
      ans = num1 - num2
      print(ans)


    def division():
      num1 = int(input("First #: "))
      num2 = int(input("Second #: "))
      ans = num1 / num2
      print(ans)


    def Help():
      print("""Welcome to Calculator P1!!!       
      Type "x" for multiplication.
      Type "+" for addition.
      Type "-" for subtraction.
      Type "/" for division.""")


    while True:
      print("Type 'help' for introduction or instructions")
      choice = input("Operator: ")

      if choice == "x" or choice == "muliplication":
        multiplication()

      elif choice == "+" or choice == "addition":
        addition()

      elif choice == "-" or choice == "subtraction":
        subtraction()

      elif choice == "/" or choice == "division":
        division()

      elif choice == "help":
        Help()


      answer = input('Run again? (y/n): ')
      if answer == 'n':
        break
      elif answer == 'y':
        continue
      else:
        print("""Unrecognized Input.
                       <<<<RESTARTING PROGRAM>>>>""")
        continue

相关问题 更多 >