4. szint
with open('Selejtezo2012.txt', encoding='utf8') as f:
forras=f.read().splitlines()
adatok=[forras[i].split(';') for i in range(1,len(forras))]
print('1. feladat\nVersenyzők száma:',len(forras))
nemz=set([a[2][-4:-1] for a in adatok])
print('\n2. feladat\nNemzetek száma:',len(nemz))
def konvert(k):
k1=''
for b in k:
if b==",":
k1+='.'
else:
k1+=b
return k1
def konvert1(k):
k1=''
for b in k:
if b==".":
k1+=','
else:
k1+=b
return k1
tovabb=[]
for a in adatok:
if a[3] not in ['X','-']:
if float(konvert(a[3]))>78:
tovabb.append(a)
if a[4] not in ['X','-'] and a not in tovabb:
if float(konvert(a[4]))>78:
tovabb.append(a)
print('\n4. feladat\nTovábbjutott',len(tovabb),'versenyző.')
def eredmeny(v):
legjobb=-1.0
if v[3] not in ['X','-']:
legjobb=float(konvert(v[3]))
if v[4] not in ['X','-']:
if float(konvert(v[4]))>legjobb:
legjobb=float(konvert(v[4]))
if v[5] not in ['X','-']:
if float(konvert(v[5]))>legjobb:
legjobb=float(konvert(v[5]))
return legjobb
for a in adatok:
a.append(eredmeny(a))
adatok.sort(key=lambda e:e[6], reverse=True)
ny=adatok[0]
print('\n6. feladat\nA selejtező nyertese:')
kiir='\tNév: '+ny[0]+'\n\tCsoport: '+ny[1]+'\n\tNemzet: '+ny[2][:-6]
kiir+='\n\tNemzetkód: '+ny[2][-4:-1]+'\n\tSorozat: '+ny[3]+';'+ny[4]+';'+ny[5]
kiir+='\n\tEredmény: '+konvert1(str(ny[6]))
print(kiir)
kod=input('\n7. feladat\nKérem egy nemzet kódját: ')
nl=[a[0]+' '+str(a[6]) for a in adatok if a[2][-4:-1]==kod]
if nl:
print(f'{kod} versenyzőinek eredményei:','; '.join(nl))
else:
print('Nincs adat.')
f=open('Dontos2012.txt ','w')
kiir='Helyezés;Név;Csoport;Nemzet;Nemzetkód;Sorozat;Eredmény'
for i in range(12):
a=adatok[i]
kiir+='\n'+str(i+1)+';'+a[0]+';'+a[1]+';'+a[2][:-6]+';'+a[2][-4:-1]+';'+a[3]+';'+a[4]+';'+a[5]+';'+konvert1(str(a[6]))
print(kiir,file=f)
f.close()