Fizika, matek, informatika érettségi

Home Fizika Excel Access A weboldalról

45. Több adat egy sorban

4. szint

A meresek.txt fájlban egy nyári nap időjárás adatainak mérési eredményei vannak, amit különböző településeken, különböző időpontokban mértek. Minden sor azonos módon épül fel, az elválasztók szóközök. Először a település kétbetűs kódja, majd a mérés időpontja óópp formátumban, utána 3 karakter szélirány és 2 karakter szélerősség közvetlenül egymás után, végül 2 karakter hőmérséklet (nem negatív).
Például:
BP 0300 32007 21
PA 0315 35010 19

A feladatok:
Olvasd be és tárold el a meresek.txt fájlban tárolt adatokat egy többdimenziós listába!
A program írja ki, hány mérési eredmény érkezett, mi volt a legmelegebb hőmérséklet, mikor mérték (óó:pp formátumban), és mi a település két betűs kódja. Ha több ilyen is van, elegendő egyet megjeleníteni!

Letöltés: meresek.txt

Minta:
Mérési eredmények száma: 374
A legmelegebb hőmérséklet 35 °C volt, 13:15-kor mérték DC településen.



fajl = open('meresek.txt')
forras = fajl.read().splitlines()
fajl.close()
adatok = [elem.split(' ') for elem in forras] # [településkód,óópp idő,szél,hőmérséklet]
print('Mérési eredmények száma:',len(adatok))

homersekletek = [int(adat[3]) for adat in adatok]
legmelegebb = max(homersekletek)
#print(legmelegebb) # teszteléskor kiíratjuk a számított adatot
jo = [adat for adat in adatok if int(adat[3])==legmelegebb][0] # [0] azért kell, mert egy listát képez a legmelegebb bejegyzésekből
#print(jo) # teszteléskor kiíratjuk, így értjük meg igazán a működést
print('A legmelegebb hőmérséklet',legmelegebb,'°C volt,',jo[1][0:2]+':'+jo[1][2:4]+'-kor mérték '+jo[0]+' településen.')