Por supuesto, a continuación te muestro un ejemplo de una calculadora básica escrita en Python. Esta calculadora puede realizar operaciones de suma, resta, multiplicación y división:

```python
 sumar(a, b):
    return a + b

def restar(a, b):
    return a - b

def multiplicar(a, b):
    return a * b

def dividir(a, b):
    try:
        return a / b
    except ZeroDivisionError:
        return "Error: División por cero no permitida."

def main():
    print("Seleccione la operación:")
    print("1. Sumar")
    print("2. Restar")
    print("3. Multiplicar")
    print("4. Dividir")

    while True:
        eleccion = input("Ingrese su elección (1/2/3/4): ")

        if eleccion in ('1', '2', '3', '4'):
            numero1 = float(input("Ingrese el primer número: "))
            numero2 = float(input("Ingrese el segundo número: "))

            if eleccion == '1':
                print(f"{numero1} + {numero2} = {sumar(numero1, numero2)}")

            elif eleccion == '2':
                print(f"{numero1} - {numero2} = {restar(numero1, numero2)}")

            elif eleccion == '3':
                print(f"{numero1} * {numero2} = {multiplicar(numero1, numero2)}")

            elif eleccion == '4':
                resultado = dividir(numero1, numero2)
                if isinstance(resultado, str):
                    print(resultado)
                else:
                    print(f"{numero1} / {numero2} = {resultado}")

            siguiente_calculo = input("¿Desea realizar otra operación? (sí/no): ")
            if siguiente_calculo.lower() != 'sí':
                break
        else:
            print("Entrada no válida, por favor ingrese una opción válida (1/2/3/4)")

if __name__ == "__main__":
    main()
```

Este código define funciones para cada operación básica y luego presenta un menú para que el usuario seleccione la operación deseada. La entrada se captura mediante `input` y se valida para asegurar que el usuario introduzca una opción válida. Además, maneja la excepción de división entre cero para evitar errores en tiempo de ejecución.

Si tienes otra preferencia de lenguaje de programación o necesitas una función adicional, no dudes en decírmelo.