Forse sono riuscito a venirne a capo.. in maniera totalmente rustica!
Effettivamente, vado a modificare ognivolta il dizionario, andando ad inseire la coppia chiave:valore all'interno di una lista database.
Questo e' quello che ne e' venuto fuori!
codice:
truth = open ("ip_juniper_list.log", "r") # apre la "verita'", il file che mi serve per riscontro
campagna = open ("logrouter.txt", "r") # apre risultato della campagna
logpython = open ("logpython.txt", "w") # scrive in un log file il risultato della campagna, trmaite dizionario
#print ip
value = 1
db = []
indice = 0
ipsingolo = " "
indicedb = 1
indiceresult = " "
ipsingolo2 = " "
#print ip
router = truth.readline() # legge la prima riga del file (prima?)
ip = router.split (" ") # creo una lista di ip, utilizzando il .split
# mi serve per trovare il singolo ip della lista router, ovvero della singola riga
for router in iter(truth): # per ogni "router", utilizzando un iteratore in truth
ip = router.split (" ") # creo la mia lista di ip, splittando router
for indice in ip: # per ogni ipsingolo all'interno della lista ip
ipsingolo = indice # ipsingolo = ipsingolo
#db.append({ipsingolo:value}) # inserisci la coppia chiave:valore all'interno di un database
diz = {ipsingolo:value}
db.append(diz)
value = value +1 # incrementa il valore della chiave
result = campagna.readline()
ipresult = result.split (" ")
for result in iter(campagna):
ipresult = result.split(" ")
for indiceresult in ipresult:
ipsingolo2 = indiceresult
while indicedb < len(db):
if lambda:(db[indicedb]) == ipsingolo2: # FUNZIONA MA NON SO COME, MERITO DI LAMBDA!
logpython.write("ciaoooo")
Che ne pensi?