1
0
Fork 0
POB_2019/zad2_1.py

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