forked from s444409/POB_2019
56 lines
1.8 KiB
Python
56 lines
1.8 KiB
Python
|
class Produkt():
|
||
|
def __init__(self, id, name, price):
|
||
|
self.id=id
|
||
|
self.name=name
|
||
|
self.price=price
|
||
|
def __str__(self):
|
||
|
return str(self.id) + ' Nazwa: ' + self.name + '\n' + 'Cena: ' + str(self.price) + 'PLN'
|
||
|
|
||
|
class Koszyk():
|
||
|
def __init__(self, clientName):
|
||
|
self.clientName=clientName
|
||
|
self.due=0
|
||
|
self.products=[]
|
||
|
def dodajProdukt(self, produkt):
|
||
|
self.products.append(produkt)
|
||
|
self.due+=produkt.price
|
||
|
self.due=round(self.due, 2)
|
||
|
print('Dodano produkt do koszyka')
|
||
|
def lacznyKoszt(self):
|
||
|
return "Do zapłaty: " + str(self.due)
|
||
|
def __str__(self):
|
||
|
return ('Koszyk użytkownika ' + self.clientName +
|
||
|
'\nProdukty w koszyku:\n' +
|
||
|
'\n'.join(map(str, self.products)))
|
||
|
|
||
|
products=[Produkt(1, 'Jabłko', 3.19),
|
||
|
Produkt(2, 'Pomarańcza', 2.59),
|
||
|
Produkt(3, 'Banan', 5.99),
|
||
|
Produkt(4, 'Śliwka', 4.89)]
|
||
|
|
||
|
print("Wprowadź nazwę użytkownika: ", end='')
|
||
|
username=input()
|
||
|
koszyk=Koszyk(username)
|
||
|
print("Witaj " + username + "!")
|
||
|
print("Lista dostępnych produktów:")
|
||
|
for product in products:
|
||
|
print(product)
|
||
|
print("Aby dodać produkt do koszyka, wprowadź jego numer. Wpisz '0' aby zobaczyć zawartość swojego koszyka.")
|
||
|
while True:
|
||
|
while True:
|
||
|
choice=int(input())
|
||
|
if choice > len(products) or choice < 0:
|
||
|
print("Nie ma produktu o takim numerze.")
|
||
|
continue
|
||
|
elif choice==0:
|
||
|
print(koszyk)
|
||
|
break
|
||
|
else:
|
||
|
koszyk.dodajProdukt(products[choice-1])
|
||
|
print(koszyk.lacznyKoszt())
|
||
|
print("Chcesz zakończyć zakupy i zapłacić? [Y/n]", end=' ')
|
||
|
wantExit=input()
|
||
|
if wantExit=='Y' or wantExit=='y':
|
||
|
print("Zapłacono " + str(koszyk.due) + '.')
|
||
|
print("Dziękujemy za zakupy!")
|
||
|
break
|