[Python] Creazione albero stocastico solo con dizionari

Antonio Piepoli piepoli.antonio a gmail.com
Lun 17 Set 2012 12:11:18 CEST


Salve a tutti,

premetto che questa domanda è molto stupida ma non riesco a trovare una
soluzione.
Diciamo che ho un vettore la cui lunghezza è già nota a priori. Ogni
elemento del vettore deve subire una funzione; il punto è che la funzione
cambia sia da elemento ad elemento ed in generare è scelta con una certa
probabilità.

stavo pensando a qualcosa di questo tipo

first_stage = {'match':0.5, 'unmatch':0.5}
match = ['match_surname','match_name']
unmatch = ['unmatch_surname','unmatch_name']

match_surname = {'1_error':0.5, '2_error':0.3, 'no_error':0.2}
match_name = {'1_error':0.5, '2_error':0.3, 'no_error':0.2}

for record in records:
  destiny = choose(first_stage)
     for step in destiny:
         function = choose(step)
         function(record[desiny.index(record)])

la funzione choose prende un dizionario fatto in quel modo e mi restituisce
un valore (stringa):

def choose(d):
    index = -1
    keys = d.keys()
    r = random.random()
    while (r > 0):
          r -= d[keys[index]]
        index += 1
    return keys[index]

posso associare a quella stringa una variabile/funzione con quel nome ?
stessa cosa dicasi per i vettori. È una cosa che mi consigliate di fare ?

Grazie

-- 
Antonio Piepoli
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20120917/d51013ab/attachment.html>


Maggiori informazioni sulla lista Python