Gardening

Run Settings
LanguagePython
Language Version
Run Command
print ("**Pflanzenübersicht**") print () print ("Pflanze\t\tArtenanzahl\t\tAnpflanzzeit\t\tWuchshöhe\t\tStandort\t\tPflegehinweise") print () print ("Blumen") print () print ("Lavendel\tca.25\t\t\tFrühling\t\t30-80cm\t\t\tsonnig,durchlässig\ttrocken halten") print ("Sonnenblume\tca.70\t\t\tFrühling\t\t100-300cm\t\tsonnig\t\t\tbewässert,windgeschützt") print ("Rose\t\t>100\t\t\tHerbst,Frühling\t\t50-200cm\t\tsonnig,halbschattig\tregelmäßiger Schnitt, Schädlinge kontrollieren") print ("Lilie\t\t>100\t\t\tHerbst\t\t\t80-120cm\t\tsonnig,halbschattig\tBoden leicht feucht halten, frostempfindlich") print ("Ringelblume\tca.20\t\t\tFrühling\t\t30-50cm\t\t\tsonnig\t\t\tgeringe Pflege, lockerer Boden") print ("Lavatera\tca.25\t\t\tHerbst\t\t\t10-15cm\t\t\thalbschattig\t\tBoden feucht und humusreichhalten") print ("Astern\t\tca.180\t\t\tFrühjahr\t\t20-150cm\t\tsonnig,halbschattig\tregelmäßig gießen") print ("Obst") print () print ("Erdbeere\tca.20\t\t\tFrühling\t\t10-30cm\t\t\tsonnig\t\t\tmulchen, regelmäßig gießen") print ("Johannisbeere\tca.50\t\t\tFrühling\t\t100-150cm\t\tsonnig,halbschattig\tWindschutz, regelmäßig gießen") print () print ("Gemüse") print () print ("Tomate\t\tca.13\t\t\tFrühling\t\t100-200cm\t\tsonnig\t\t\thoher Wasserbedarf, regelmäßig düngen") print ("Zucchini\t1\t\t\tFrühling\t\t60-100cm\t\tsonnig\t\t\thoher Wasser- und Platzbedarf") print ("Karotte\t\tca.6\t\t\tFrühling,Spätsommer\t20-40cm\t\t\tsonnig\t\t\tlockerer, sandiger Boden") print ("Rucola\t\tca.10\t\t\tHerbst,Frühling\t\t15-30cm\t\t\tsonnig,halbschattig\tregelmäßig ernten und feucht halten") print ("Radieschen\tca.3\t\t\tHerbst,Frühling\t\t10-30cm\t\t\tsonnig\t\t\tfeuchter, durchlässiger Boden") print () print ("Kräuter") print () print ("Salbei\t\tca.900\t\t\tFrühling\t\t30-60cm\t\t\tsonnig,trocken\t\tmäßig gießen") print ("Basilikum\tca.60\t\t\tFrühling\t\t20-50cm\t\t\tsonnig\t\t\tregelmäßig ernten, hoher Wasserbedarf") print ("Thymian\t\tca.300\t\t\tFrühling\t\t10-30cm\t\t\tsonnig,trocken\t\ttrockener Boden") print ("Pfefferminze\tca.25\t\t\tFrühling\t\t30-90cm\t\t\thalbschattig\t\tfeucht halten")
# Datenstruktur für Pflanzeninformationen plant_data = [ # Blumen {"Kategorie": "Blumen", "Pflanze": "Lavendel", "Artenanzahl": "ca.25", "Anpflanzzeit": "Frühling", "Wuchshöhe": "30-80cm", "Standort": "sonnig,durchlässig", "Pflegehinweise": "trocken halten"}, {"Kategorie": "Blumen", "Pflanze": "Sonnenblume", "Artenanzahl": "ca.70", "Anpflanzzeit": "Frühling", "Wuchshöhe": "100-300cm", "Standort": "sonnig", "Pflegehinweise": "bewässert,windgeschützt"}, {"Kategorie": "Blumen", "Pflanze": "Rose", "Artenanzahl": ">100", "Anpflanzzeit": "Herbst,Frühling", "Wuchshöhe": "50-200cm", "Standort": "sonnig,halbschattig", "Pflegehinweise": "regelmäßiger Schnitt, Schädlinge kontrollieren"}, {"Kategorie": "Blumen", "Pflanze": "Lilie", "Artenanzahl": ">100", "Anpflanzzeit": "Herbst", "Wuchshöhe": "80-120cm", "Standort": "sonnig,halbschattig", "Pflegehinweise": "Boden leicht feucht halten, frostempfindlich"}, {"Kategorie": "Blumen", "Pflanze": "Ringelblume", "Artenanzahl": "ca.20", "Anpflanzzeit": "Frühling", "Wuchshöhe": "30-50cm", "Standort": "sonnig", "Pflegehinweise": "geringe Pflege, lockerer Boden"}, {"Kategorie": "Blumen", "Pflanze": "Lavatera", "Artenanzahl": "ca.25", "Anpflanzzeit": "Herbst", "Wuchshöhe": "10-15cm", "Standort": "halbschattig", "Pflegehinweise": "Boden feucht und humusreichhalten"}, {"Kategorie": "Blumen", "Pflanze": "Astern", "Artenanzahl": "ca.180", "Anpflanzzeit": "Frühjahr", "Wuchshöhe": "20-150cm", "Standort": "sonnig,halbschattig", "Pflegehinweise": "regelmäßig gießen"}, # Obst {"Kategorie": "Obst", "Pflanze": "Erdbeere", "Artenanzahl": "ca.20", "Anpflanzzeit": "Frühling", "Wuchshöhe": "10-30cm", "Standort": "sonnig", "Pflegehinweise": "mulchen, regelmäßig gießen"}, {"Kategorie": "Obst", "Pflanze": "Johannisbeere", "Artenanzahl": "ca.50", "Anpflanzzeit": "Frühling", "Wuchshöhe": "100-150cm", "Standort": "sonnig,halbschattig", "Pflegehinweise": "Windschutz, regelmäßig gießen"}, # Gemüse {"Kategorie": "Gemüse", "Pflanze": "Tomate", "Artenanzahl": "ca.13", "Anpflanzzeit": "Frühling", "Wuchshöhe": "100-200cm", "Standort": "sonnig", "Pflegehinweise": "hoher Wasserbedarf, regelmäßig düngen"}, {"Kategorie": "Gemüse", "Pflanze": "Zucchini", "Artenanzahl": "1", "Anpflanzzeit": "Frühling", "Wuchshöhe": "60-100cm", "Standort": "sonnig", "Pflegehinweise": "hoher Wasser- und Platzbedarf"}, {"Kategorie": "Gemüse", "Pflanze": "Karotte", "Artenanzahl": "ca.6", "Anpflanzzeit": "Frühling,Spätsommer", "Wuchshöhe": "20-40cm", "Standort": "sonnig", "Pflegehinweise": "lockerer, sandiger Boden"}, {"Kategorie": "Gemüse", "Pflanze": "Rucola", "Artenanzahl": "ca.10", "Anpflanzzeit": "Herbst,Frühling", "Wuchshöhe": "15-30cm", "Standort": "sonnig,halbschattig", "Pflegehinweise": "regelmäßig ernten und feucht halten"}, {"Kategorie": "Gemüse", "Pflanze": "Radieschen", "Artenanzahl": "ca.3", "Anpflanzzeit": "Herbst,Frühling", "Wuchshöhe": "10-30cm", "Standort": "sonnig", "Pflegehinweise": "feuchter, durchlässiger Boden"}, # Kräuter {"Kategorie": "Kräuter", "Pflanze": "Salbei", "Artenanzahl": "ca.900", "Anpflanzzeit": "Frühling", "Wuchshöhe": "30-60cm", "Standort": "sonnig,trocken", "Pflegehinweise": "mäßig gießen"}, {"Kategorie": "Kräuter", "Pflanze": "Basilikum", "Artenanzahl": "ca.60", "Anpflanzzeit": "Frühling", "Wuchshöhe": "20-50cm", "Standort": "sonnig", "Pflegehinweise": "regelmäßig ernten, hoher Wasserbedarf"}, {"Kategorie": "Kräuter", "Pflanze": "Thymian", "Artenanzahl": "ca.300", "Anpflanzzeit": "Frühling", "Wuchshöhe": "10-30cm", "Standort": "sonnig,trocken", "Pflegehinweise": "trockener Boden"}, {"Kategorie": "Kräuter", "Pflanze": "Pfefferminze", "Artenanzahl": "ca.25", "Anpflanzzeit": "Frühling", "Wuchshöhe": "30-90cm", "Standort": "halbschattig", "Pflegehinweise": "feucht halten"} ] # Funktion zur Anzeige der Daten in der Konsole def display_table(data): # Große Überschrift 'Pflanzenübersicht' print("PFLANZENÜBERSICHT".center(80, "=")) print("\n") # Spaltenüberschriften header = ["Pflanze", "Artenanzahl", "Anpflanzzeit", "Wuchshöhe", "Standort", "Pflegehinweise"] column_widths = [max(len(header[i]), max(len(str(row[header[i]])) for row in data)) for i in range(len(header))] # Gesamtlänge der Trennlinie berechnen line_length = sum(column_widths) + len(column_widths) - 1 separator = "-" * line_length # Überschrift formatieren header_format = "{:<{}} {:<{}} {:<{}} {:<{}} {:<{}} {:<{}}" print(header_format.format(header[0], column_widths[0], header[1], column_widths[1], header[2], column_widths[2], header[3], column_widths[3], header[4], column_widths[4], header[5], column_widths[5])) print(separator) # Gruppieren nach Kategorien categories = {} for row in data: category = row["Kategorie"] if category not in categories: categories[category] = [] categories[category].append(row) # Anzeige der Daten nach Kategorien for category, plants in categories.items(): # Kategorie als Überschrift anzeigen print(f"\n{category.upper()}") # Nur einmalig die Kategorie anzeigen print(separator) for plant in plants: # Pflanzeninformationen ohne die Kategorie mit extra Abstand print(header_format.format( plant["Pflanze"], column_widths[0], plant["Artenanzahl"], column_widths[1], plant["Anpflanzzeit"], column_widths[2], plant["Wuchshöhe"], column_widths[3], plant["Standort"], column_widths[4], plant["Pflegehinweise"], column_widths[5] )) print(separator) # Zusätzliche Ausgabe für Frühjahrsanpflanzungen print("\n") print("PFLANZEN FÜR DIE ANPFLANZUNG IM FRÜHLING".center(80, "-")) print("\n") # Filtern der Pflanzen, die im Frühling angepflanzt werden können spring_plants = [plant for plant in data if "Frühling" in plant["Anpflanzzeit"]] # Ausgabe der Frühlingspflanzen for plant in spring_plants: print(header_format.format( plant["Pflanze"], column_widths[0], plant["Artenanzahl"], column_widths[1], plant["Anpflanzzeit"], column_widths[2], plant["Wuchshöhe"], column_widths[3], plant["Standort"], column_widths[4], plant["Pflegehinweise"], column_widths[5] )) print("-" * line_length) # Daten anzeigen display_table(plant_data)
Editor Settings
Theme
Key bindings
Full width
Lines