def trucades1(nomf):
    n012, n11811 = 0, 0
    with open(nomf, 'r') as f:
        for line in f:
            line = line.strip()  # o: line = line.replace('\n', '')
                                 # o: line = line[:-1]
            if line == '012':
                n012 = n012 + 1
            elif line == '11811':
                n11811 = n11811 + 1
    return n012, n11811


def trucades2(nomf):
    n, m = trucades1(nomf)
    with open('nombres.txt', 'w') as f:
        line = '012' + ' ' + str(n) + '\n'
        f.write(line)
        line = '11811' + ' ' + str(m) + '\n'
        f.write(line)


def trucades3(nomf):
    prevLine = ''
    with open(nomf, 'r') as f:
        for line in f:
            line = line.strip()
            if line == prevLine:
                return True
            else:
                prevLine = line
    return False


def trucades4(nomf, pref):
    compt = 0
    with open(nomf, 'r') as f:
        for line in f:
            line = line.strip()
            if line.find(pref) == 0:
                compt = compt + 1
    return compt


def trucades5(nomf1, nomf2, prefixe):
    with open(nomf1, 'r') as f1, open(nomf2, 'w') as f2:
        for line in f1:
            line = line.strip()
            if line.find(prefixe) == 0:
                line2 = line + '\n'
                f2.write(line2)


def trucades6(nomf1, nomf2, prefixe):
    ltel = []
    with open(nomf1, 'r') as f1:
        for line in f1:
            line = line.strip()
            if line.find(prefixe) == 0 and line not in ltel:
                ltel.append(line)
    # Ara que tenim la llista ltel ja es pot tancar el primer fitxer
    ltel.sort()
    with open(nomf2, 'w') as f2:
        for tel in ltel:
            line2 = tel + '\n'
            f2.write(line2)
