rage / python-s20

https://python-s20.mooc.fi
1 stars 10 forks source link

12-13 #260

Closed Vihainenkoodaaja closed 3 years ago

Vihainenkoodaaja commented 3 years ago

En ymmärrä, miksei tehtävä mene läpi. Tehtävän ensimmäisestä osasta saan pisteet. Loput osat eivät mene läpi. Virheilmoitukset sanovat, että funktio on toteutettava reduce- ja filter-funktioilla. Olen kuitenkin käyttänyt molempia funktioita ja kaikki muut testit menevät läpi. Onko tässä nyt joku virhe vai enkö vaan osaa?

Virheilmoitus on tämmöinen: OpintopisteettTest: test_09_opintopisteiden_summa_reduce_kaytossa Funktio hyvaksyttyjen_opintopisteiden_summa(kurssit: list) on toteutettava filter- ja reduce-funktioiden avulla

Ja koodi tämmöinen:

def kaikkien_opintopisteiden_summa(suoritus): return reduce(lambda summa , alkio : summa+alkio.opintopisteet, suoritus, 0)

def hyvaksyttyjen_opintopisteiden_summa (kurssit:list):

hyvaksytyt=filter(lambda s: s.arvosana >= 1 , kurssit)

return reduce (lambda summa, alkio : summa+alkio.opintopisteet, (filter(lambda alkio: alkio.arvosana >= 1 , kurssit)), 0)

def keskiarvo (kurssit: list): hyvaksytyt= filter(lambda s: s.arvosana >= 1 , kurssit) hyvaksytyt=list(hyvaksytyt) summa= reduce (lambda summa, alkio : summa+alkio.arvosana, hyvaksytyt, 0) maara=len(hyvaksytyt) return (summa/maara)