Udfordring: Produktstyring Capstone
Tillykke med at have nået dette punkt i kurset! I denne afsluttende udfordring skal du administrere letfordærvelige produkter i et supermarked og fastsætte rabatter baseret på produkternes udløbsdato og lagerniveauer. Målet er at minimere spild og samtidig maksimere salget gennem strategisk rabatsætning.
Lad os se, hvor godt du kan omsætte forretningsregler til Python-kode!
Scenarie
Som leder i et supermarked er du ansvarlig for implementering af en rabatstrategi for letfordærvelige produkter baseret på deres udløbsdato og lagerniveauer.
Rabatstrategien er som følger:
Anvend en 30% rabat, hvis produktet udløber om 3 dage eller mindre, og lagerniveauet er over
50
enheder;Anvend en 20% rabat, hvis produktet udløber om 4 til 6 dage, og lagerniveauet er over
50
enheder;Anvend en 10% rabat, hvis produktet udløber om 7 dage eller mere, eller hvis lagerniveauet er
50
enheder eller derunder;Ingen rabat, hvis produktet ikke er "Letfordærveligt".
Swipe to start coding
Implementer en række betingede udsagn for at bestemme rabatten for et produkt baseret på dets type, antal dage til udløb og lagerbeholdning.
- Start med at kontrollere, om
product_type
er"Perishable"
. - Inden for denne
if
-sætning:- Anvend en 30% rabat, hvis
days_until_expiration
er3
eller færre, ogstock_level
er større end50
; - Brug
elif
til at anvende en 20% rabat, hvisdays_until_expiration
er mellem4
og6
, ogstock_level
er større end50
; - Brug endnu en
elif
til at anvende en 10% rabat, hvisdays_until_expiration
er større end6
, ogstock_level
er50
eller mindre.
- Anvend en 30% rabat, hvis
- Hvis
product_type
ikke er"Perishable"
, udskriv"No discount available for non-perishable items."
.
Outputkrav
- Hvis en 30% rabat anvendes, udskriv:
"30% discount applied"
- Hvis en 20% rabat anvendes, udskriv:
"20% discount applied"
- Hvis en 10% rabat anvendes, udskriv:
"10% discount applied"
- Hvis produktet er ikke-fordærveligt, udskriv:
"No discount available for non-perishable items."
Bemærk
Du kan indlejre flere
if
-sætninger i hinanden. Sørg for at håndtere indrykningen korrekt for hver blok.
Løsning
Tak for dine kommentarer!