이익 마진 계산기: OOP를 사용하여 전자 상거래 P&L 도구 구축
이 장에서는 P&L 계산기를 구축하기 위한 OOP가 무엇이고 왜 필요한지에 대해 설명합니다. 빌드할 Python 스크립트를 작성하는 방법을 마스터할 수 있습니다.
이 장에서는 P&L 계산기를 구축하기 위해 OOP가 무엇이고 왜 필요한지 설명합니다. 이 Python 자습서가 끝나면 Python 코딩 스크립트를 작성하여 비즈니스 모델에 맞는 계산기를 구축하는 방법을 마스터할 수 있습니다.
목차: 프로필 마진 계산기
- OOP란 무엇인가 – 객체 지향 프로그래밍
- 방법: 국경 간 전자 상거래 이익 마진 계산기의 알고리즘
- SKU 이익 마진 계산기의 Python OPP 코딩
- Flask 스크립트 – HTML, CSS 및 Python
- 전자 상거래 손익 계산기의 전체 Python 스크립트
OOP란 무엇인가 – 객체 지향 프로그래밍
객체 지향 프로그래밍 또는 OOP는 클래스와 객체의 개념에 의존하는 프로그래밍 패러다임입니다. 이를 사용하여 소프트웨어 프로그램을 일반적으로 클래스라고 부르는 간단하고 재사용 가능한 코드 청사진으로 구성할 수 있습니다. 그리고 클래스에서 개체의 개별 인스턴스를 만들 수 있습니다.
OOP는 기본적으로 부모 클래스(자식 클래스를 가질 수 있음), 클래스 속성 및 메서드(함수이지만 OOP에서는 이를 메서드라고 함)로 구성됩니다.
전자상거래 P&L 계산기를 예로 들어 보겠습니다. 전자 상거래에는 다양한 유형의 비즈니스 모델이 있거나 다양한 제품 카테고리를 판매하고 있습니다. 국내, 국경 간, 직송, B2B 도매 등이 있습니다. 전자 상거래 비즈니스의 각 유형은 개체의 특정 인스턴스가 될 수 있습니다. 다른 계산 알고리즘과 속성 값이 필요합니다. 변동비 항목이 조금 다를 것이기 때문입니다. 그러나 어떤 유형의 전자 상거래이든 수익 마진에 영향을 미치는 몇 가지 일반적인 속성이 있어야 합니다.
이익 마진 속성은 다음과 같습니다.
- 도착 비용(국경 간 전자 상거래인 경우 단가당 제품, 국제 배송 및 관세 포함)
- 이행 비용
- 결제 처리 비용
- 환불 비용
- 판매당 비용
- 할인 비용
- SKU 가격
OOP에서 클래스의 개념은 기본입니다. 각 클래스는 속성과 메소드로 구성됩니다. 그런 다음 이 클래스를 사용하여 다른 개체를 가질 수 있습니다. 전자 상거래 P&L 계산기의 각 개체는 비즈니스 모델을 나타낼 수 있습니다. 즉, 모든 개체는 동일한 부모 클래스를 사용하지만 로컬 특성 값과 메서드가 다릅니다.
예를 들어 국내 전자상거래 손익에는 국제 배송비가 없을 수 있습니다. 따라서 국경 간 전자 상거래에서는 착륙 비용 값이 다를 수 있습니다.
전자 상거래 가변 비용에 대한 자세한 내용을 보려면 이 기사를 확인하십시오.
방법: 국경 간 전자 상거래 이익 마진 계산기의 알고리즘
계산 알고리즘은 계산기의 중요한 구성 요소입니다. 두 가지 이유 때문입니다. 첫 번째 이유는 참조를 위해 올바른 SKU 이익 마진 계산을 절대적으로 원하기 때문입니다. 두 번째 이유는 사용자가 계산기에 어떤 데이터와 데이터 형식을 입력해야 하는지 명확하게 알려주고 싶기 때문입니다. 계산기가 사용자가 더 복잡한 인수를 가진 숫자를 찾는 데 도움을 주는 것을 목표로 하는 경우 경우에 따라 매우 복잡할 수 있습니다.
예를 들어 일반적으로 이익 마진 공식은 (SKU 가격 – 판매 비용) / SKU 가격입니다. 그리고 판매 비용을 양륙 비용, 이행 비용, 환불 비용, 결제 처리 비용, CPS 및 할인 비용으로 세분화할 수 있습니다. 계산기의 대상에 따라 필요한 경우 더 세분화할 수 있습니다. 예를 들어 사용자에게 주문 처리 비용에 대한 무게, 크기 및 목적지를 입력하도록 요청합니다. 또는 알고리즘을 보여주기 위해 예를 들어 환불 비율을 입력하겠습니다.
속성 값과 연결되는 개체 알고리즘은 다음과 같습니다.
(SKU price - landed cost - fulfillment cost - (refund rate * fulfillment cost * 2) - payment processing cost - discount rate * SKU price - CPS) / SKU price
SKU 이익 마진 계산기의 Python OOP 코딩
저는 이 Python OOP에서 국경 간 전자상거래 P&L 계산기를 상위 클래스로 사용합니다. 이제 속성 및 계산 알고리즘의 범위가 준비되었습니다. 아래는 계산기 핵심 엔진의 코딩입니다.
Python OOP에서 가장 먼저 할 일은 부모 클래스를 만드는 것입니다. 이 클래스에는 세 가지 기본 구성 요소가 있습니다. _init__ attribute
, 속성 연관 및 메소드 정의입니다.
_init__ 속성
이것은 클래스의 자체 기본 개체 및 메서드입니다. __init__( )
의 위치 인수에 여기에 모든 속성을 추가하여 기본 메서드를 정의해야 합니다. 국경 간 전자 상거래 P&L 계산기를 구축하고 있으므로 속성 항목은 이 모델과 관련된 가격 및 가변 비용입니다.
def __init__(
self,
landedCost,
shippingCost,
paymentCost,
refundCost,
CPA,
discount,
price
):
자기 객체에 할당
자체 개체가 준비되었으므로 위치 인수의 특성과 연결할 수 있는 변수를 만들 수 있습니다. 따라서 이 개체의 모든 메서드에 변수를 사용할 수 있습니다.
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
OOP 개체는 SKU 속성 값을 입력한 후 이익 마진을 계산하는 것입니다. 따라서 이 클래스에 포함된 알고리즘이 필요합니다. 이를 위해 def를 사용하여 메소드를 생성할 수 있으며, 위치 인자는 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
언급했듯이 계산 알고리즘은 실제 요구 사항에 따라 다릅니다. 따라서 이 클래스에서 더 많은 알고리즘 방법을 정의할 수 있습니다. 예를 들어 SKU 가격을 AOV로 대체하는 다른 방법을 설정할 수 있습니다.
플라스크 스크립트
Flask는 Python, HTML, CSS, PHP 등과 같은 프로그래밍 스크립트와 통합할 수 있는 친구이자 강력한 웹 응용 프로그램 빌더입니다. 설치 방법에 대한 자세한 내용을 알고 싶으면 빌드하고 테스트하기 위해 설정하고 사용하십시오. Python 웹 애플리케이션은 이 문서를 확인하십시오.
계산기 응용 프로그램의 Flask 스크립트에는 처리해야 할 두 가지 기본 사항이 있습니다. Python 스크립트와 HTML 스크립트입니다.
Flask 스크립트의 Python 스크립트
여기서 Python 스크립트는 속성 값을 수집하기 위한 프런트 엔드 html 테이블을 연결해야 합니다. 한편, html 페이지에서 수집된 데이터를 공급하여 OOP 계산기 알고리즘과 연결해야 합니다. 가장 중요한 것 중 하나는 위치 인수입니다. 계산에서 잘못된 결과를 피하기 위해 입력 데이터 변수와 위치 인수를 잘 일치시키십시오.
자기 대상:
profitMargin1 = item(landedCost1, shippingCost1, paymentCost1, refundCost1, CPA1, discount1, price1)
계산 알고리즘 할당
result = "{:.2%}".format(round(profitMargin1.calculate_profitmargin(), 2))
계산을 백분율로 변환한다는 것을 알 수 있습니다. 이는 calculate_profitmargin
의 결과가 부동 숫자이기 때문입니다. 그것은 더 나은 사용자 경험을 만들 것입니다
결과 페이지에 입력 값 유지
사용자는 결과를 생성하는 상자에 입력한 숫자를 다시 확인하고 싶어합니다. 따라서 더 나은 사용자 경험을 만들고 싶다면 입력 값을 유지하는 것이 중요합니다. 따라서 리턴에서 html 페이지의 템플릿을 선택하는 것과 별도로 이러한 매개변수를 추가해야 합니다.
return render_template("result.html", price1=price1, landedCost1=landedCost1, shippingCost1=shippingCost1, paymentCost1=paymentCost1, refundCost1=refundCost1, CPA1=CPA1, discount1=discount1, result=result)
HTML 템플릿 페이지
HTML 페이지는 계산기 레이아웃과 디자인, 상호 작용 블록을 사용자에게 보여주는 프런트 엔드입니다. html과 CSS를 사용하여 웹 페이지를 만들고 장식하는 방법에 대한 다른 기사를 발표하겠습니다. 하지만 이 애플리케이션에서 중요한 것은 수집된 모든 데이터가 올바른 위치 인수와 관련될 수 있는지 확인해야 한다는 것입니다. 그렇지 않으면 계산 결과가 잘못될 수 있습니다.
따라서 보시다시피 각 입력 상자에는 이익 마진을 계산하는 데 사용하는 동일한 이름의 변수와 연결된 관련 이름 요소가 있습니다.
전자 상거래 손익 계산기의 전체 Python 스크립트
전자상거래 손익계산기 전체 스크립트가 궁금하시다면, "Chapter 33"이라는 메시지를 추가하여 뉴스레터를 구독 하십시오. . 귀하의 사서함으로 스크립트를 즉시 보내드립니다.
33장: OOP를 사용하여 전자상거래 이익 마진 계산기 만들기를 즐겁게 읽으시기 바랍니다. 그렇다면 아래 나열된 항목 중 하나를 수행하여 지원해 주세요. 항상 채널에 도움이 되기 때문입니다.
- PayPal( paypal.me/Easy2digital )을 통해 채널을 지원하고 기부하세요.
- 제 채널 구독하시고 알림벨을 켜주세요 Easy2Digital 유튜브 채널 .
- 내 페이지 팔로우 및 좋아요 Easy2Digital Facebook 페이지
- #easy2digital 해시태그를 사용하여 소셜 네트워크에 기사를 공유하세요.
- Easy2Digital 10% 할인 코드로 제품 구매 ( Easy2DigitalNewBuyers2021)
- Easy2Digital 최신 기사, 비디오 및 할인 코드를 받으려면 주간 뉴스레터에 가입하십시오.
- 독점적인 혜택을 누리려면 Patreon을 통해 월간 멤버십을 구독하세요( www.patreon.com/louisludigital ).