Salve. Vorrei in un mio programma ottenere la lista di tutte le funzioni presenti nei file contenuti in una directory.
Ho un programma principale: main.py e una dir che contiene dei file: mod0.py, ... Il programma principale deve caricare tutte le funzioni presenti in questi moduli, ma io vorrei anche avere una lista che le contiene. Sono riuscito ad avere la lista con i loro nomi, ma mi serve la lista con le funzioni. Di seguito riporto il programma: -----8<------------main.py """Dovrebbe produrre una lista con tutte le funzioni presenti nei files della directory modules.""" import os import sys DIREXE = 'modules' def loadexe(): """Load all math esercises.""" modpath = os.path.join(os.curdir, DIREXE) print(modpath) nfiles = [n_f[:-3] for n_f in os.listdir(modpath) if n_f.endswith('.py')] sys.path.append(modpath) for n_f in nfiles: mod = __import__(n_f) print(mod) exenames = [e for e in dir(mod) if e.startswith('exe_')] print(exenames) loadexe() -----8<------------mod0.py La dir "modules" contiene files simili al seguente: -----8<------------mod0.py """Modulo 0""" def exe_primo(): """Primo esercizio.""" return "primo" def exe_secondo(): """Secondo esercizio.""" return "secondo" def exe_terzo(): """Terzo esercizio.""" return "terzo" -----8<------------mod0.py Grazie per l'attenzione e per qualunque dritta. -- Daniele www.fugamatematica.blogspot.com giusto! nel verso forse è perché non guardiamo le cose Quando non ci capiamo,
_______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python