Az első részre javaslom:
for index,line in enumerate(finp):
if index==0:
continue
line=line.strip()
x=line.split(";")
kulcs= x[0]+d+x[3]+d+x[6]+d+x[8]
val= szurj.setdefault(kulcs, x[7])
if int(val) < int(x[7]):
szurj[kulcs]= x[7]
--
eutlantis