Hoi,
Op het eerste gezicht loop je maar 1x door de lijst heen. Dat betekent
dat je gemiddelde telkens verandert; bij de 4e stad heb je het
gemiddelde over de eerste vier steden, niet over alles. Het kan best dat
die stad met 14 graden hoger is dan het gemiddelde tot dan toe.
Dus: eerst gemiddelde berekenen, dan nog een keer door de lijst en
opsplitsen.
Omdat wij je nu met je huiswerk helpen, is hier de nieuwe opdracht: maak
je oplossing beter door het werk in mooie functies als 'vind_gemiddelde'
en 'splits_lijst' onder te verdelen, met de juiste argumenten, en het
resultaat hier heen te sturen. Succes :-)
Remco
krimble wrote:
>[code]bestand = open('weer.txt', 'r')
>
>temperatuur = {}
>totaal = 0
>lijst = []
>
>lijstgroter = []
>lijstkleiner = []
>
>for line in bestand :
> if not line[0] == '#' :
> l = line.split()
>
>
> ## for calculating gemiddelde
> getallen = l[1]
> lijst.append(getallen)
> totaal += int(getallen)
> gemiddelde = totaal / len(lijst)
>
> temperatuur[l[0]] = l[1]
>
> ## if getal in l > gemiddelde then do something, else do something
>else
> if int(l[1]) >= gemiddelde :
> lijstgroter.append(l)
> elif int(l[1]) < gemiddelde :
> lijstkleiner.append(l)
>
>print "De gemiddelde temperatuur = " + str(gemiddelde) + " graden." + "\n
>\n"
>print "De steden met minstens de gemiddelde temperatuur: " + "\n" +
>str(lijstgroter) + "\n \n"
>print "De steden met een temperatuur onder het gemiddelde:" + "\n" +
>str(lijstkleiner)
>
>bestand.close()[/code]
>
>en de output is:
>
>De gemiddelde temperatuur = 15 graden.
>
>
>De steden met minstens de gemiddelde temperatuur:
>[['Athene', '19'], ['Istanbul', '19'], ['Las-Palmas', '17'], ['Lissabon',
>'18'], ['Mallorca', '14'], ['Marseille', '14'], ['Moskou', '16'], ['Rome',
>'15'], ['Bangkok', '37'], ['Curacao', '27'], ['Jakarta', '31'],
>['Johannesburg', '17'], ['Los-Angeles', '15'], ['Mexico-Stad', '17'],
>['Nairobi', '19'], ['Peking', '20'], ['Perth', '21'], ['Sydney', '20'],
>['Tel-Aviv', '21']]
>
>
>De steden met een temperatuur onder het gemiddelde:
>[['Barcelona', '15'], ['Berlijn', '7'], ['Londen', '12'], ['Madrid', '6'],
>['Milaan', '12'], ['Munchen', '6'], ['Parijs', '11'], ['Praag', '7'],
>['Stockholm', '6'], ['Warschau', '8'], ['Wenen', '11'], ['Buenos-Aires',
>'9'], ['Chicago', '11'], ['New-York', '10'], ['Tokyo', '13'], ['Toronto',
>'5'], ['Vancouver', '14']]
>
>
>Wat niet klopt omdat in de eerste lijst ['Mallorca', '14'], ['Marseille',
>'14'] onder het gemiddelde zijn, deze 2 zouden dus eigenlijk in de onderste
>lijst moeten zitten.
>
>Weet iemand hoe dit kan ?
>
>Bedankt.
>
>
_______________________________________________
Python-nl mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-nl