Listing 08-28: Using partial with operations

##############################################################################
# Python From Scratch
# Autor: Nilo Ney Coutinho Menezes
# Editora Novatec (c) 2010-2024
# Site: https://pythonfromscratch.com
#
# File: listing\chapter 08\08.28 - Using partial with operations.py
# Description: Using partial with operations
##############################################################################

import operator
from functools import partial
def execute(operation, symbol, operand1, operand2):
    result = operation(float(operand1), float(operand2))
    print(f"{operand1} {symbol} {operand2} = {result}")
operations = {
    "+": partial(execute, operator.add, "+"),
    "-": partial(execute, operator.sub, "-"),
    "*": partial(execute, operator.mul, "×"),
    "/": partial(execute, operator.truediv, "÷")}
operand1 = input("Operator 1: ")
operand2 = input("Operator 2: ")
operation = input("Operation: ").strip()
if operation in operations:
    operations[operation](operand1, operand2)
else:
    print("Invalid operation!")
Click here to download the file