"""
Created on: Wed Nov 23 13:27:59 2022
Author: vila@cs.upc.edu
"""
def read_standings(nomf):
    with open(nomf, 'r') as f:
        L = []
        for lin in f:
            Llin = extreu(lin)
            L.append(Llin)
    return L

def extreu(linia):
    l = linia.strip().split(',')
    for i in range(1, 8):
        l[i] = int(l[i])
    l[8] = float(l[8])
    return l

def print_standings(Ls):
    for l in Ls:
        print('... ', l)
        
def sort_standings(L):
    L.sort(key= lambda x: (x[7], x[5]-x[6]), reverse=True)
          
def write_standings(Ls, nomf):
    with open(nomf, 'w') as f:
        for s in Ls:
            slin = composa(s)
            f.write(slin)

def composa(l):
    ll = []
    for e in l:
        ll.append(str(e))
    return ','.join(ll) + '\n'
