Calculateur de marge bénéficiaire: Créer des outils P&L de commerce électronique à l’aide de la POO
Ce chapitre concerne quoi et pourquoi pour construire une calculatrice P&L. Vous pouvez maîtriser comment écrire des scripts Python à construire.
In this Chapter, I will walk you through what and why OOP is for building a P&L calculator. By the end of this Python Tutorial, you can master how to write Python coding scripts to build the calculator that fits your business model.
Table des matières: calculatrice de marge de profil
- Qu’est-ce que la POO – la programmation orientée objet
- Méthodes: Algorithme de la calculatrice de marge bénéficiaire de commerce électronique transfrontalière
- Python OPP codings d’une calculatrice de marge bénéficiaire SKU
- Scripts flask – html, css et python
- Full Python Script of eCommerce Profit & Loss Calculator
- FAQ
Qu’est-ce que la POO – la programmation orientée objet
La programmation ou la POO orientée objet est un paradigme de programmation qui repose sur le concept de classes et d’objets. Vous pouvez l’utiliser pour structurer un logiciel en éléments de code simples et réutilisables, que nous appelons généralement des classes. Et dans une classe, vous pouvez créer des instances individuelles d’objets.
La POO se compose essentiellement de la classe parent (peut avoir une classe enfant), des attributs de classe et des méthodes (c’est la fonction, mais OOP les appelle des méthodes).
Take the eCommerce P&L calculator for an example. eCommerce has different types of business models or is selling different product categories. It has domestic, cross-border, dropshipping, B2B wholesale, etc. Each type of eCommerce business can be a specific instance of an object. It should need a different calculation algorithm and attribute value. It’s because the variable cost item would be slightly different. However, no matter which type of eCommerce, it should have some general attributes to impact the profit margin.
Les attributs de marge bénéficiaire sont:
- Coût foncier (y compris le produit par unité de coût, plus les expéditions et les tarifs internationaux si c’est un commerce électronique transfrontalier)
- Coût de réalisation
- Coût de traitement des paiements
- Coût de remboursement
- Coût par vente
- Coût de réduction
- Le prix de la sku
In OOP, the concept of class is fundamental. Each class consists of attributes and methods. Then, it can have different objects using this class. Each object in the e-commerce P&L calculator can represent your business model. In other words, all objects are using the same parent class, however, the local attribute value and methods are different.
For example, domestic eCommerce P&L might not have international shipping costs. So the landed cost value would be different with cross-border eCommerce.
Si vous aimez en savoir plus sur les coûts variables du commerce électronique, veuillez consulter cet article
Méthodes: Algorithme de la calculatrice de marge bénéficiaire de commerce électronique transfrontalière
L’algorithme de calcul est le composant critique de la calculatrice. C’est pour deux raisons. La première raison est que vous aimez absolument avoir le bon calcul de marge bénéficiaire SKU pour référence. Ensuite, la 2ème raison est que vous aimez vous assurer que les utilisateurs sont clairs sur les données et le format de données qu’elle ou il doit saisir sur votre calculatrice. Parfois, cela peut être très complexe si votre calculatrice vise à aider les utilisateurs à trouver un nombre avec des facteurs plus complexes.
Par exemple, généralement, la formule de marge bénéficiaire est (prix de la vente du SKU – coût) / prix SKU. Et vous pouvez essayer de décomposer le coût de vente en coût foncier, le coût de réalisation, le coût de remboursement, le coût de traitement des paiements, le CPS et le coût de remise. Selon l’objet de la calculatrice, vous pouvez le décomposer si nécessaire, par exemple, il demande aux utilisateurs de saisir le poids, la taille et la destination pour le coût de réalisation. Ou ici, je prends une entrée de taux de remboursement pour un exemple pour afficher l’algorithme
L’algorithme d’objet qui se connecte avec la valeur d’attribut est:
(SKU price - landed cost - fulfillment cost - (refund rate * fulfillment cost * 2) - payment processing cost - discount rate * SKU price - CPS) / SKU price
Python OOP Codings d’une calculatrice de marge bénéficiaire SKU
I take the cross-border eCommerce P&L calculator as the parent class in this Python OOP. Now the scope of attributes and calculation algorithm is ready. Below are the codings of the core engine of the calculator.
In Python OOP, the first thing is to create a parent class. In this class, there are three fundamental components. They are the _init__ attribute
, attribute association and a method definition.
_Init__ Attribut
This is the self-default object and method of the class. We need to def the default method by adding all attributes here in the positional arguments in the __init__( )
. As we are building a cross-border eCommerce P&L calculator, the attribute items are the price and variable costs related to this model.
def __init__(
self,
landedCost,
shippingCost,
paymentCost,
refundCost,
CPA,
discount,
price
):
Attribuer à l’objectif
L’auto-objet est prêt, vous pouvez donc créer les variables qui peuvent être associées aux attributs des arguments de position. Vous pouvez donc commencer à utiliser les variables pour toutes les méthodes de cet objet.
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
L’OOP-Object doit calculer la marge bénéficiaire après avoir saisi les valeurs d’attribut SKU. Nous avons donc besoin d’un algorithme intégré dans cette classe. Pour cela, nous pouvons créer une méthode en utilisant DEF, et l’argument de position peut être auto.
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
Comme mentionné, l’algorithme de calcul varie en fonction des besoins réels. Ainsi, vous pouvez définir plus de méthodes d’algorithme dans cette classe, par exemple, vous pouvez définir l’autre qui remplace le prix SKU par l’AOV.
Scripts de flacon
Flask est un ami et puissant constructeur d’applications Web qui peut s’intégrer à vos scripts de programmation, tels que Python, HTML, CSS, PHP, etc. Si vous aimez apprendre plus de détails sur la façon d’installer, de l’installer et de l’utiliser pour créer et tester Applications Web Python, veuillez consulter cet article
Chapitre 26: Créez une application Web Shopify Bot à l’aide de Flask et Heroku
Dans le script Flask de l’application de calculatrice, il y a deux choses principales dont vous devez vous occuper. Ce sont le script Python et le script HTML.
Script Python dans le script Flask
Le script Python doit ici connecter la table HTML frontale qui est pour collecter la valeur d’attribut. Pendant ce temps, il doit se connecter avec l’algorithme de la calculatrice OOP en alimentant les données collectées à partir de la page HTML. L’une des choses les plus importantes est l’argument positionnel, veuillez bien correspondre à la variable de données d’entrée et à l’argument positionnel, pour éviter le mauvais résultat dans le calcul
Auto-objet:
profitMargin1 = item(landedCost1, shippingCost1, paymentCost1, refundCost1, CPA1, discount1, price1)
Affecter l’algorithme de calcul
result = "{:.2%}".format(round(profitMargin1.calculate_profitmargin(), 2))
You might notice, we convert the calculation into a percentage number. That’s because the outcome from calculate_profitmargin
is a floating number. That would create a better user experience
Gardez la valeur d’entrée dans la page de résultat
Les utilisateurs souhaitent revérifier le numéro qu’ils entrent dans la boîte générant le résultat. Ainsi, garder la valeur d’entrée est important si vous aimez créer une meilleure expérience utilisateur. Ainsi, dans le retour, nous devons ajouter ces paramètres en dehors de la sélection du modèle de page HTML.
return render_template("result.html", price1=price1, landedCost1=landedCost1, shippingCost1=shippingCost1, paymentCost1=paymentCost1, refundCost1=refundCost1, CPA1=CPA1, discount1=discount1, result=result)
Pages de modèle HTML
Les pages HTML sont le frontal où vous montrez la disposition et la conception de votre calculatrice et les blocs d’interaction aux utilisateurs. Je publierai un autre article sur la façon de créer et de décorer une page Web à l’aide de HTML et CSS. Mais dans cette application, la clé est que vous devez vous assurer que toutes les données collectées peuvent être liées au bon argument de position. Sinon, le résultat du calcul pourrait être faux
Ainsi, comme vous pouvez le voir, chaque boîte d’entrée a un élément de nom connexe qui est connecté au même nom de la variable que vous utilisez pour calculer la marge bénéficiaire.
Full Python Script of eCommerce Profit & Loss Calculator
If you are interested in the full script of the eCommerce Profit & Loss Calculator, please subscribe to our newsletter by adding the message “Chapter 33”. We would send you the script immediately to your mailbox.
J’espère que vous apprécierez la lecture du chapitre 33: Créez une calculatrice de marge bénéficiaire de commerce électronique en utilisant OOP. Si vous l’avez fait, veuillez nous soutenir en faisant l’une des choses énumérées ci-dessous, car cela aide toujours notre chaîne.
- Support and donate to our channel through PayPal (paypal.me/Easy2digital)
- Subscribe to my channel and turn on the notification bell Easy2Digital Youtube channel.
- Follow and like my page Easy2Digital Facebook page
- Partagez l’article sur votre réseau social avec le hashtag # easy2digital
- Buy products with Easy2Digital 10% OFF Discount code (Easy2DigitalNewBuyers2021)
- Vous vous inscrivez à notre newsletter hebdomadaire pour recevoir les derniers articles, vidéos et codes de remise Easy2digital
- Subscribe to our monthly membership through Patreon to enjoy exclusive benefits (www.patreon.com/louisludigital)
FAQ:
Q1: Qu’est-ce que la programmation orientée objet?
R: La programmation orientée objet (POO) est un paradigme de programmation qui organise les données et les comportements en structures réutilisables appelées objets. Il se concentre sur le concept de classes et d’objets, permettant un développement de code modulaire et efficace.
Q2: Quels sont les avantages de l’utilisation de la programmation orientée objet?
R: Certains avantages de l’utilisation de la programmation orientée objet comprennent la réutilisabilité du code, la modularité, l’encapsulation et l’abstraction. La POO permet une maintenance et des mises à jour plus faciles, ainsi que des temps de développement plus rapides.
Q3: En quoi la programmation orientée objet diffère-t-elle de la programmation procédurale?
R: La programmation procédurale se concentre sur les procédures ou les fonctions qui fonctionnent sur les données, tandis que la programmation orientée objet se concentre sur la création d’objets qui contiennent à la fois des données et des fonctions. OOP favorise l’organisation du code et la réutilisabilité.
Q4: Quelles sont les classes dans la programmation orientée objet?
A: Les classes sont le plan ou le modèle pour créer des objets dans la programmation orientée objet. Ils définissent les propriétés et les comportements que les objets de cette classe auront.
Q5: Quels sont les objets dans la programmation orientée objet?
R: Les objets sont des instances d’une classe dans la programmation orientée objet. Ils sont créés à partir du plan de classe et peuvent avoir leurs propres données et comportements uniques.
Q6: Qu’est-ce que l’héritage dans la programmation orientée objet?
R: L’héritage est une caractéristique de la programmation orientée objet qui permet aux classes de hériter des propriétés et des comportements d’autres classes. Il favorise la réutilisation du code et la hiérarchie.
Q7: Qu’est-ce que le polymorphisme dans la programmation orientée objet?
R: Le polymorphisme est la capacité d’un objet à prendre de nombreuses formes. Dans la programmation orientée objet, il permet à des objets de différentes classes d’être traités comme des objets d’une superclasse commune.
Q8: Qu’est-ce que l’encapsulation dans la programmation orientée objet?
R: L’encapsulation est le processus de cachette des détails internes d’un objet et d’exposer uniquement les informations nécessaires. Il aide à maintenir l’intégrité et la sécurité du code.
Q9: Qu’est-ce que l’abstraction dans la programmation orientée objet?
R: L’abstraction est le processus de simplification des systèmes complexes en les décomposant en parties plus petites et plus gérables. Il permet une compréhension et une maintenance plus faciles du code.
Q10: Quels sont les langages de programmation populaires qui prennent en charge la programmation orientée objet?
R: Certains langages de programmation populaires qui prennent en charge la programmation orientée objet incluent Java, C ++, Python, Ruby et C #.