Ciao a tutti, vi scrivo per un consiglio concernente l'importazione di * da un modulo.
Il problema si pone per il fatto che il software sul quale lavoro e' esposto allo scripting da parte degli utenti e quindi non e' realmente controllabile con delle semplici regole di buon coding. Senza andare troppo nei dettagli, ho un modulo con delle funzioni frontend (con print) e un modulo corrispondente con delle funzioni di backend (che ritornano dizionari, NamedTuple ...) queste funzioni hanno lo stesso nome e nel momento in cui l'utente fa: 'from backend import *' questo sovrascrive le funzioni frontend in maniera inaspettata (perlomeno per l'utente). Questo e' anche dovuto al modo in cui vengono caricati gli script utente che pero' al momento non e' possibile cambiare: in pratica abbiamo un `load_script` che elabora il file ed esegue quanto contenuto, una pratica non proprio pythonica, ma va mantenuta. Una delle possibili soluzioni e' chiaramente rinominare le funzioni backend, magari con un 'lib_funzione'. Una alternativa sarebbe impedire l'import star, la domanda infatti verte su questo: e' possobile sollevare un'eccezione su questo tipo di import? Grazie Piergiorgio
_______________________________________________ Python mailing list Python@lists.python.it https://lists.python.it/mailman/listinfo/python