Calculadora de margen de beneficio: Cree herramientas de P&L de comercio electrónico usando OOP
Este capítulo trata sobre qué y por qué OOP para construir una calculadora de pérdidas y ganancias. Puede dominar cómo escribir scripts de Python para compilar.
En este capítulo, lo guiaré a través de qué y por qué la programación orientada a objetos es para construir una calculadora de pérdidas y ganancias. Al final de este Tutorial de Python, podrá dominar cómo escribir secuencias de comandos de codificación de Python para construir la calculadora que se ajuste a su modelo de negocio.
Tabla de contenido: Calculadora de margen de perfil
- Qué es POO – Programación Orientada a Objetos
- Métodos: Algoritmo de calculadora de margen de beneficio de comercio electrónico transfronterizo
- Codificaciones Python OPP de una calculadora de margen de beneficio de SKU
- Flask scripts: HTML, CSS y Python
- Script Python completo de la calculadora de pérdidas y ganancias de comercio electrónico
Qué es OOP – Programación Orientada a Objetos
La Programación Orientada a Objetos o POO es un paradigma de programación que se basa en el concepto de clases y objetos. Puede usarlo para estructurar un programa de software en piezas simples y reutilizables de planos de código, que generalmente llamamos clases. Y en una clase, puede crear instancias individuales de objetos.
OOP consiste básicamente en la clase principal (puede tener una clase secundaria), atributos de clase y métodos (es la función, pero OOP los llama métodos).
Tome la calculadora de pérdidas y ganancias de comercio electrónico como ejemplo. El comercio electrónico tiene diferentes tipos de modelos comerciales o vende diferentes categorías de productos. Tiene envío nacional, transfronterizo, dropshipping, venta al por mayor B2B, etc. Cada tipo de negocio de comercio electrónico puede ser una instancia específica de un objeto. Debería necesitar un algoritmo de cálculo y un valor de atributo diferentes. Es porque el artículo de costo variable sería ligeramente diferente. Sin embargo, no importa qué tipo de comercio electrónico, debe tener algunos atributos generales para impactar el margen de ganancias.
Los atributos del margen de beneficio son:
- Costo de destino (incluido el costo del producto por unidad, más el envío internacional y las tarifas si se trata de un comercio electrónico transfronterizo)
- costo de cumplimiento
- Costo de procesamiento de pago
- Costo de reembolso
- Costo por venta
- Costo de descuento
- El precio del SKU
En OOP, el concepto de clase es fundamental. Cada clase consta de atributos y métodos. Entonces, puede tener diferentes objetos usando esta clase. Cada objeto en la calculadora de pérdidas y ganancias de comercio electrónico puede representar su modelo de negocio. En otras palabras, todos los objetos utilizan la misma clase principal; sin embargo, el valor del atributo local y los métodos son diferentes.
Por ejemplo, es posible que las pérdidas y ganancias del comercio electrónico nacional no tengan costos de envío internacional. Por lo tanto, el valor del costo de destino sería diferente con el comercio electrónico transfronterizo.
Si desea obtener más detalles sobre los costos variables de comercio electrónico, consulte este artículo
Métodos: Algoritmo de calculadora de margen de beneficio de comercio electrónico transfronterizo
El algoritmo de cálculo es el componente crítico de la calculadora. Es por dos razones. La primera razón es que le gusta tener el cálculo correcto del margen de beneficio de SKU como referencia. Luego, la segunda razón es que le gusta asegurarse de que los usuarios tengan claro qué datos y formato de datos deben ingresar en su calculadora. A veces puede ser muy complejo si su calculadora tiene como objetivo ayudar a los usuarios a encontrar un número con factores más complejos.
Por ejemplo, generalmente, la fórmula del margen de beneficio es (precio SKU – costo de venta) / precio SKU. Y puede intentar desglosar el costo de venta en costo de destino, costo de cumplimiento, costo de reembolso, costo de procesamiento de pagos, CPS y costo de descuento. Según el objeto de la calculadora, puede desglosarlo aún más si es necesario, por ejemplo, solicita a los usuarios que ingresen el peso, el tamaño y el destino del costo de cumplimiento. O aquí tomaré la entrada de la tasa de reembolso como ejemplo para mostrar el algoritmo
El algoritmo del objeto que conecta con el valor del atributo es:
(SKU price - landed cost - fulfillment cost - (refund rate * fulfillment cost * 2) - payment processing cost - discount rate * SKU price - CPS) / SKU price
Codificaciones Python OOP de una calculadora de margen de beneficio de SKU
Tomo la calculadora de pérdidas y ganancias de comercio electrónico transfronterizo como la clase principal en este Python OOP. Ahora el alcance de los atributos y el algoritmo de cálculo está listo. A continuación se muestran las codificaciones del motor central de la calculadora.
En Python OOP, lo primero es crear una clase principal. En esta clase, hay tres componentes fundamentales. Son el _init__ attribute
, la asociación de atributos y la definición de un método.
atributo _init__
Este es el objeto y método predeterminado de la clase. Necesitamos definir el método predeterminado agregando todos los atributos aquí en los argumentos posicionales en __init__( )
. Como estamos construyendo una calculadora de pérdidas y ganancias de comercio electrónico transfronterizo, los elementos de atributo son el precio y los costos variables relacionados con este modelo.
def __init__(
self,
landedCost,
shippingCost,
paymentCost,
refundCost,
CPA,
discount,
price
):
Asignar a objeto propio
Self-object está listo, por lo que puede crear las variables que se pueden asociar con los atributos en los argumentos posicionales. Entonces puede comenzar a usar las variables para todos los métodos en este objeto.
self.landedCost = landedCost
self.shippingCost = shippingCost
self.paymentCost = paymentCost
self.refundCost = refundCost
self.CPA = CPA
self.discount = discount
self.price = price
Define the P&L calculator algorithm method
El objeto OOP es calcular el margen de beneficio después de ingresar los valores del atributo SKU. Entonces necesitamos un algoritmo incrustado en esta clase. Para esto, podemos crear un método usando def, y el argumento posicional puede ser self.
def calculate_profitmargin(self):
return (self.price - self.landedCost - self.shippingCost - self.price * self.paymentCost - self.shippingCost * 2 * self.refundCost - self.CPA - self.discount * self.price) / self.price
Como se mencionó, el algoritmo de cálculo varía según las necesidades reales. Por lo tanto, puede definir más métodos de algoritmo en esta clase, por ejemplo, puede configurar el otro que reemplaza el precio SKU con el AOV.
Guiones de matraz
Flask es un generador de aplicaciones web amigo y poderoso que puede integrarse con sus scripts de programación, como Python, HTML, CSS, PHP, etc. Si desea obtener más detalles sobre cómo instalarlo, configurarlo y usarlo para construir y probar Aplicaciones web de Python, consulte este artículo
Capítulo 26: Crear una aplicación web de Shopify Bot usando Flask y Heroku
En el script Flask de la aplicación de calculadora, hay dos cosas principales de las que debe ocuparse. Son el script Python y el script HTML.
Script Python en el Script Flask
El script de Python aquí necesita conectar la tabla html de front-end que es para recopilar el valor del atributo. Mientras tanto, necesita conectarse con el algoritmo de la calculadora OOP alimentando los datos recopilados de la página html. Una de las cosas más importantes es el argumento posicional, haga coincidir bien la variable de datos de entrada y el argumento posicional, para evitar un resultado incorrecto en el cálculo.
Auto-objeto:
profitMargin1 = item(landedCost1, shippingCost1, paymentCost1, refundCost1, CPA1, discount1, price1)
Asignar el algoritmo de cálculo
result = "{:.2%}".format(round(profitMargin1.calculate_profitmargin(), 2))
Puede notar que convertimos el cálculo en un número de porcentaje. Esto se debe a que el resultado de calculate_profitmargin
es un número flotante. Eso crearía una mejor experiencia de usuario.
Mantener el valor de entrada en la página de resultados
A los usuarios les gustaría volver a verificar qué número ingresaron en el cuadro que genera el resultado. Por lo tanto, mantener el valor de entrada es importante si desea crear una mejor experiencia de usuario. Por lo tanto, en la devolución, debemos agregar estos parámetros además de seleccionar la plantilla de la página html.
return render_template("result.html", price1=price1, landedCost1=landedCost1, shippingCost1=shippingCost1, paymentCost1=paymentCost1, refundCost1=refundCost1, CPA1=CPA1, discount1=discount1, result=result)
páginas de plantilla HTML
Las páginas HTML son la parte frontal donde muestra el diseño y el diseño de su calculadora, y los bloques de interacción para los usuarios. Publicaré otro artículo sobre cómo construir y decorar una página web usando html y CSS. Pero en esta aplicación, la clave es asegurarse de que todos los datos recopilados puedan relacionarse con el argumento posicional correcto. De lo contrario, el resultado del cálculo podría ser incorrecto.
Por lo tanto, como puede ver, cada cuadro de entrada tiene un elemento de nombre relacionado que está conectado con el mismo nombre de la variable que usa para calcular el margen de beneficio.
Script Python completo de la calculadora de pérdidas y ganancias de comercio electrónico
Si está interesado en el script completo de la Calculadora de pérdidas y ganancias de comercio electrónico, suscríbase a nuestro boletín agregando el mensaje "Capítulo 33" . Le enviaremos el guión inmediatamente a su buzón.
Espero que disfrute leyendo el Capítulo 33: Cree una calculadora de margen de ganancias de comercio electrónico usando OOP. Si lo hiciste, apóyanos haciendo una de las cosas que se enumeran a continuación, porque siempre ayuda a nuestro canal.
- Apoya y dona a nuestro canal a través de PayPal ( paypal.me/Easy2digital )
- Suscríbete a mi canal y activa la campanita de notificaciones Easy2Digital Youtube channel .
- Sigue y dale me gusta a mi página Easy2Digital Facebook page
- Comparte el artículo en tu red social con el hashtag #easy2digital
- Compre productos con Easy2Digital 10% de descuento Código de descuento ( Easy2DigitalNewBuyers2021)
- Te suscribes a nuestro boletín semanal para recibir los últimos artículos, videos y códigos de descuento de Easy2Digital
- Suscríbase a nuestra membresía mensual a través de Patreon para disfrutar de beneficios exclusivos ( www.patreon.com/louisludigital )