In Python è possibile creare un'istanza di una classe attraverso un dizionario?Dizionario con classi?
shapes = {'1':Square(), '2':Circle(), '3':Triangle()}
x = shapes[raw_input()]
Voglio consentire all'utente di scegliere un menu e non codificare istruzioni if if enormi sull'input. Ad esempio se l'utente ha inserito 2, x sarebbe quindi una nuova istanza di Circle. È possibile?
quando si è tentato di esso, cosa è successo? –
Beh, lo sto facendo con i menu, e solo avendo un generico wrapper di menu gestisco il menu da caricare. Sono molto nuovo a questo: -/ – mandroid
Sì, è possibile, e lo stai facendo bene FORNITO vuoi istanziare tutte le forme una volta all'inizio, memorizzare le istanze nel dict e assegnarne una a x . Se vuoi solo istanziare la classe selezionata, o pianifichi di istanziare le singole forme più volte, usa qualcosa come la risposta di Vinay. – Markus