[Python] Liste e collezioni
Salve a tutti, supponiamo (è la semplificazione di un problema che ho davvero) che io abbia una classe A: class A(): def metodo1(self): def metodo2(self): Il mio programma usa questa classe e deve potere gestire indifferentemente un singolo elemento o collezioni di elementi di questa classe (fintanto che non ne deve ricevere alcun input, deve poterlo fare trasparentemente senza domandarsi se è un elemento o è una lista di elementi). Il modo banale di risolvere il problema sarebbe far sì che il mio programma in realtà maneggi solo liste (eventualmente con un solo elemento). Ma in realtà il mio programma l'ho già scritto e non mi va di cambiarlo, ma soprattutto di complicarlo. Allora ho pensato di creare la seguente classe: class listadiA(list): def metodo1(self, parametri): for i in self: self[i].metodo1(parametri) def metodo2(self, parametri): for i in self: self[i].metodo2(parametri) (almeno per tutti i metodi che non ritornano alcun valore, poi gli altri li "sovrascrivo" in modo meno banale) Mi domando però se c'è un modo più furbo di scrivere una roba del genere, per sprecare meno codice ma soprattutto per non doverlo aggiornare se cambio/aggiungo metodi della classe originale... Con "dir" io riesco ad avere tutti i metodi di "A", ma una volta che ho un metodo non so come aggiungere il suo "metodo derivato" al dizionario dei metodi di "listadiA". In pratica avrei bisogno di modificare il dizionario dei metodi di listadiA come fosse un qualsiasi dizionario. C'è un modo per farlo o è pura follia? grazie Pietro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
[Python] wx: Frame annidati
Vorrei creare un'applicazione (la mia prima).. vorrei che avesse piu' frame uno dentro l'altro ma dopo aver goglizzato diverso tempo non sono riuscito a trovare nulla.. Chiedo a voi qualche consiglio, se ad esempio volessi aggiungere oltre al menu nella mia applicazione (allegata) anche 3 ulteriori sotto frame?? Come dovrei fare? Vi ringrazio.. -- Matteo Buferli WEB: http://www.buferli.com PGP FINGERPRINT: B7C9 BE0A F77F 4747 56A2 87EC F6E5 8A01 65BB 58C1 prova3.py Description: application/python signature.asc Description: This is a digitally signed message part. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Liste e collezioni
On Feb 25, 2008, at 3:22 PM, Pietro Battiston wrote: > Mi domando però se c'è un modo più furbo di scrivere una roba del > genere, per sprecare meno codice ma soprattutto per non doverlo > aggiornare se cambio/aggiungo metodi della classe originale... Pattern composite, Design Patterns, Google, etc. ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] wx: Frame annidati
Matteo Buferli ha scritto: > Vorrei creare un'applicazione (la mia prima).. vorrei che avesse piu' > frame uno dentro l'altro ma dopo aver goglizzato diverso tempo non > sono riuscito a trovare nulla.. > > Chiedo a voi qualche consiglio, se ad esempio volessi aggiungere oltre > al menu nella mia applicazione (allegata) anche 3 ulteriori sotto > frame?? Come dovrei fare? Secondo me, ti conviene cercare MDIWindows (sul demo si chiama così) oppure AUI (ma in quel caso dovrai utilizzare dei panel, per cui, ad esempio, non potrai avere i menu). Simone Chiacchiera con i tuoi amici in tempo reale! http://it.yahoo.com/mail_it/foot/*http://it.messenger.yahoo.com ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python