All pastes #287639 Raw Edit

Anonymous

public text v1 · immutable
#287639 ·published 2006-12-21 17:16 UTC
rendered paste body
import sys
numerolista = []
listaa = []
for filename in sys.argv[1:}:
    tiedosto = open(filename)
    sisalto = tiedosto.readlines()
    listaa.extend(sisalto)
    tiedosto.close()

def log_error(error, line):
    tied1 = open("virhe.txt", "a")
    tied1.write(error)
    tied1.write(line)
    tied1.close()

def nrovirhe():
    log_error("Virheellinen numero: ", rivi)

def nimivirhe():
    log_error("Virheellinen nimi: ", rivi)

def final():
    rivi2 = numero2+";"+etunimi+";"+sukunimi+";\n"
    numerolista.append(numero2)
    if numerolista.count(numero2)==2:
        tied2 = open("identtinen.txt", "a")
        tied2.write(rivi2)
        tied2.close()
    elif numerolista.count(numero2)>2:
        pass
    else:
        tied3 = open("tulos.txt", "a")
        tied3.write(rivi2)
        tied3.close()

def jarj1():
    list1 = []
    tied11 = open("virhe.txt", "r")    
    list1 = tied11.readlines()
    list1.sort()
    tied11.close()
    tied11 = open("virhe.txt", "w")
    tied11.writelines(list1)
    tied11.close()

def jarj2():
    list2 = []
    tied22 = open("tulos.txt", "r")
    t = tied22.read()
    list2 = t.split("\n")
    list2.sort()
    tied22.close()
    tied22 = open("tulos.txt", "w")
    for t in list2:
        tied22.write(t)
        tied22.write("\n")
    tied22.close()

def jarj3():
    list3 = []
    tied33 = open("identtinen.txt", "r")
    u = tied33.read()
    list3 = u.split("\n")
    list3.sort()
    tied33.close()
    tied33 = open("identtinen.txt", "w")
    for u in list3:
        tied33.write(u)
        tied33.write("\n")
    tied33.close()

def lukija():
    global rivi
    global numero2
    global etunimi
    global sukunimi
    rivi = listaa.pop()
    if rivi:
        numero, etunimi, sukunimi, rv = rivi.split(";")
        numero2 = numero.replace(" ","")
        numero2 = numero2.replace("-","")
        if numero2[0]=="0":
            if numero2[1]=="0":                    
                nrovirhe()
            else:
                if len(numero2) in range (5,11):
                    if len(etunimi) in range(3,21):
                        if len(sukunimi) in range(3,21):
                            numero3 = numero2[1:]
                            numero2 = "+358"+numero3
                            final()
                        else:
                            nimivirhe()
                    else:
                        nimivirhe()
                else:
                    nrovirhe()
        elif numero2[0:4]=="+358":
            if len(numero2) in range (8,14):
                if len(etunimi) in range(3,21):
                    if len(sukunimi) in range(3,21):
                        final()
                    else:
                        nimivirhe()
                else:
                    nimivirhe()
            else:
                nrovirhe()
        else:
            nrovirhe()

if __name__ == "__main__":
  lukija()
  jarj1()
  jarj2()
  jarj3()