2016-10-06 12:12 GMT+02:00 antonio autolitano <antonioautolit...@gmail.com>: > Sono un'appassionato di programmazione e da poco tempo ho iniziato a > studiare Python 3.5.2.
Da dove? > Dopo aver aperto > la mia prima finestra, e passato alla successiva, non riesco più a chiudere > quest'ultima (finestra1) per passare alla finestra successiva (finestra2), > in quanto l'istruzione finestra1.destroy() non da nessun effetto. Domanda: > perchè per chiudere la prima finestra il comando "destroy" funziona e per la > successiva no ? Perché quando usi il nome "finestra" in istruz() stai usando la variabile globale "finestra" mentre quando cerchi di accedere a "finestra1" in xx() non c'è una variabile globale corrispondente e quindi hai l'errore sul nome. Questo succede perché "finestra" l'hai definita nel modulo con finestra=Tk() mentre "finestra1" l'hai definita in istruz() e quindi ha una visibilità (scope) locale a quella sola funzione. Potresti allocare entrambi gli oggetti fuori nel modulo oppure usare il comando "global", che in genere viene visto male ma che per un esempio così semplice può andare. Detto questo passo ai suggerimenti personali: secondo me hai fatto bene ad allegare il codice piuttosto che copincollare tante righe, ma sarebbe stato anche opportuno indicare l'errore ottenuto nel corpo del messaggio, ad esempio. Ho fatto girare il codice in allegato e ottengo NameError: name 'finestra1' is not defined Il tuo codice è poco leggibile, il riferimento suggerito per lo stile si chiama PEP8, senza fare troppo gli integralisti (ad esempio con gli 80 o 78 o 120 caratteri) suggerisco di leggerlo e di atternetici (attenervici? attenervitici?) finché non ci sarà la necessità di violarlo. Inoltre ti serve una guida su come strutturare un programma GUI, qualcuno ti consiglierà Qt che è moderno e ha i suoi vantaggi in termini di struttura del codice. Il vantaggio di Tk è che ancora oggi viene distribuito col core di python, con poche configurazione assume un aspetto decente. Purtroppo non sono la persona indicata per suggerirti quale guida usare, quindi devi aspettare che qualcun altro risponda. -- Andrea _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python