Impressum
private Webseite
Jan Ackermann
def finde_interessante_projekte(anzahl):
alle_projekte = lade_projekte_aus_datenbank() # Lade alle Projekte
for projekt in alle_projekte:
projekt["score"] = berechne_score(projekt) # Berechne Score und speichere ihn
# Sortiere Projekte nach Score (absteigend)
sortierte_projekte = sorted(alle_projekte, key=lambda p: p["score"], reverse=True)
return sortierte_projekte[:anzahl] # Rückgabe der Top-N-Projekte
def berechne_score(projekt):
score = 0
score += projekt["likes"] * 2 # Likes zählen doppelt
score += projekt["kommentare"] * 3 # Kommentare haben hohen Einfluss
score += projekt["aufrufe"] * 0.5 # Aufrufe sind weniger wichtig
if projekt.get("ist_trendend", False):
score += 10 # Bonus für trendende Projekte
return score
# Beispiel-Aufruf
top_projekte = finde_interessante_projekte(5)
for projekt in top_projekte:
print(projekt["name"], "Score:", projekt["score"])