[Python] Richiamare funzione componendo il nome

Josef Eschgfaeller esg a unife.it
Lun 10 Set 2012 13:27:45 CEST


Si puo' fare o raccogliendo le funzioni in precedenza
definite in una lista oppure con exec (meno consigliato).
--------------------------------------------------
funzioni=[f1,f2,g,h,...]

for f in funzioni: f()
--------------------------------------------------
for n in ncasuali: exec('%s%d()' %(prefisso,n)
--------------------------------------------------
# Esempio:

def f1 (): print('f1')
def f2 (): print('f2')
def g (): print('g')
def h (): print('h')

funzioni=[f1,f2,g,h]
for f in funzioni: f()

for n in [1,2]: exec('f%d()' %n)
--------------------------------------------------
Josef Eschgfaeller


Maggiori informazioni sulla lista Python