added einkaufsliste
This commit is contained in:
100
01_Python_Jupyter/code/00/einkaufsliste.py
Normal file
100
01_Python_Jupyter/code/00/einkaufsliste.py
Normal file
@@ -0,0 +1,100 @@
|
|||||||
|
import os
|
||||||
|
|
||||||
|
class Product:
|
||||||
|
def __init__(self, name:str, price:float, menge:int=1):
|
||||||
|
self.name = name
|
||||||
|
self.price = price
|
||||||
|
self.menge = menge
|
||||||
|
|
||||||
|
def __str__(self):
|
||||||
|
return f"{self.name} ({self.price} €)"
|
||||||
|
|
||||||
|
|
||||||
|
def produkt_hinzufuegen(einkaufsliste:list[Product]):
|
||||||
|
#Get User input
|
||||||
|
name = input("Geben Sie den Namen des Produkts ein: ")
|
||||||
|
preis = float(input("Geben Sie den Preis des Produkts ein: "))
|
||||||
|
menge = int(input("Geben Sie die Menge des Produkts ein: "))
|
||||||
|
#Add the product to the list
|
||||||
|
einkaufsliste.append(Product(name,preis,menge))
|
||||||
|
print(f"{name} wurde zur Einkaufsliste hinzugefügt")
|
||||||
|
|
||||||
|
def einkaufsliste_entfernen(einkaufsliste:list[Product]):
|
||||||
|
#Get User input
|
||||||
|
name = input("Geben Sie den Namen des zu entfernenden Produkts ein: ")
|
||||||
|
#Remove the product from the list
|
||||||
|
for product in einkaufsliste:
|
||||||
|
if product.name == name:
|
||||||
|
einkaufsliste.remove(product)
|
||||||
|
print(f"{name} wurde von der Einkaufsliste entfernt")
|
||||||
|
return
|
||||||
|
print(f"{name} konnte nicht gefunden werden")
|
||||||
|
|
||||||
|
def einkaufsliste_anzeigen(einkaufsliste:list[Product]):
|
||||||
|
if not einkaufsliste:
|
||||||
|
print("Einkaufsliste ist leer")
|
||||||
|
return
|
||||||
|
|
||||||
|
print("Einkaufsliste:")
|
||||||
|
print("*"*20)
|
||||||
|
for product in einkaufsliste:
|
||||||
|
print(f"{product.menge}x {product.name} zu je {product.price} €")
|
||||||
|
|
||||||
|
def einkaufsliste_speichern(einkaufsliste:list[Product], dateiname:str):
|
||||||
|
with open(dateiname, "w") as file:
|
||||||
|
for product in einkaufsliste:
|
||||||
|
file.write(f"{product.name};{product.price};{product.menge}\n")
|
||||||
|
print("Einkaufsliste wurde gespeichert")
|
||||||
|
|
||||||
|
def einkaufsliste_laden(einkaufsliste:list[Product], dateiname:str):
|
||||||
|
try:
|
||||||
|
with open(dateiname, "r") as file:
|
||||||
|
for line in file:
|
||||||
|
name, price, menge = line.strip().split(";")
|
||||||
|
einkaufsliste.append(Product(name, float(price), int(menge)))
|
||||||
|
print(f"Einkaufsliste wurde aus {dateiname} geladen")
|
||||||
|
except FileNotFoundError:
|
||||||
|
print("Einkaufsliste konnte nicht geladen werden, da die Datei nicht gefunden wurde")
|
||||||
|
return einkaufsliste
|
||||||
|
def einkaufsliste_loeschen(einkaufsliste:list[Product], dateiname:str):
|
||||||
|
einkaufsliste.clear()
|
||||||
|
if os.path.exists(dateiname):
|
||||||
|
os.remove(dateiname)
|
||||||
|
print("Datei {dateiname} wurde gelöscht")
|
||||||
|
print("Einkaufsliste wurde gelöscht")
|
||||||
|
|
||||||
|
def start():
|
||||||
|
einkaufsliste = []
|
||||||
|
dateiname = "einkaufsliste.txt"
|
||||||
|
|
||||||
|
while True:
|
||||||
|
print("Was möchten Sie tun?")
|
||||||
|
print("1: Produkt hinzufügen")
|
||||||
|
print("2: Produkt entfernen")
|
||||||
|
print("3: Einkaufsliste anzeigen")
|
||||||
|
print("4: Einkaufsliste speichern")
|
||||||
|
print("5: Einkaufsliste laden")
|
||||||
|
print("6: Einkaufsliste löschen")
|
||||||
|
print("7: Programm beenden")
|
||||||
|
|
||||||
|
auswahl = int(input("Ihre Auswahl: "))
|
||||||
|
if auswahl == 1:
|
||||||
|
produkt_hinzufuegen(einkaufsliste)
|
||||||
|
elif auswahl == 2:
|
||||||
|
einkaufsliste_entfernen(einkaufsliste)
|
||||||
|
elif auswahl == 3:
|
||||||
|
einkaufsliste_anzeigen(einkaufsliste)
|
||||||
|
elif auswahl == 4:
|
||||||
|
einkaufsliste_speichern(einkaufsliste, dateiname)
|
||||||
|
elif auswahl == 5:
|
||||||
|
einkaufsliste = einkaufsliste_laden(einkaufsliste, dateiname)
|
||||||
|
elif auswahl == 6:
|
||||||
|
einkaufsliste_loeschen(einkaufsliste, dateiname)
|
||||||
|
elif auswahl == 7:
|
||||||
|
break
|
||||||
|
else:
|
||||||
|
print(auswahl)
|
||||||
|
print("Ungültige Eingabe")
|
||||||
|
|
||||||
|
if __name__ == "__main__":
|
||||||
|
start()
|
||||||
9
01_Python_Jupyter/code/00/main.py
Normal file
9
01_Python_Jupyter/code/00/main.py
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
class Animal:
|
||||||
|
def __init__(self, name):
|
||||||
|
self.name = name
|
||||||
|
|
||||||
|
def speak(self):
|
||||||
|
return f'{self.name} says something'
|
||||||
|
class Dog(Animal):
|
||||||
|
def speak(self):
|
||||||
|
return f'{self.name} barks'
|
||||||
1
01_Python_Jupyter/einkaufsliste.txt
Normal file
1
01_Python_Jupyter/einkaufsliste.txt
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ab;1.0;1
|
||||||
Reference in New Issue
Block a user