[Python] trasformare una stringa in un nome di funzione.
Nadir Sampaoli
nadirsampaoli a gmail.com
Mar 25 Giu 2013 18:49:48 CEST
Il giorno 25 giugno 2013 19:13, Pietro Zambelli ha scritto:
> ma non puoi cambiare il codice in modo da avere invece che il nome della
> funzione, la funzione stessa?
>
Da quello che ho capito io, lui già lo fa con gli «if..elif..». Sta
cercando un modo più automatico di passare dagli argomenti avuti da linea
di comando (che sono stringhe) ad oggetti funzione da chiamare.
Qualche tempo in un'altra mail fa qualcuno aveva menzionato una qualche
libreria che ti permette di mappare direttamente le funzioni sugli
argomenti della CLI. Speravo di aver salvato il link tra i bookmark ma non
è così. Ti permetterebbe di fare una cosa del tipo (molto molto a grandi
linee):
import sys
import nonmiricordo
qualcosa = nonmiricordo.Qualcosa()
@qualcosa.unqualchedecoratore
def command(arg):
print 'hello ' + arg
if __name__ == '__main__':
qualcosa.esegui(sys.argv[1:])
$ program.py command --arg=foo
hello foo
Insomma, la non meglio definita libreria riempie il buco fra argomenti come
stringa e codice associato.
Che bello essere così dettagliati! Magari qualche anima pia interviene a
precisare!
Ciao,
Nadir
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20130625/5f7f80bf/attachment-0001.html>
Maggiori informazioni sulla lista
Python