stavo cercando di generare una classe da un dizionario:classe aggiunta di attributi utilizzando un ciclo for in Python
class attr:
for key in objects_type:
setattr(attr, key, lambda cl: list())
Questo dà l'errore che attr non è definito durante il ciclo for. So che potrei scrivere:
class attr:
pass
for key in objects_type:
setattr(attr, key, lambda cl: list())
Ma sono sicuro che ricordo di aver visto codice simile al primo esempio da qualche parte. Qualcuno sa se è possibile scrivere qualcosa di simile al primo modulo?
Deve essere stato quello che ricordo di aver visto. Grazie – Casebash
In effetti, penso che sia più bello dell'uso di setattr - quindi non direi che è inelegante – Casebash
Non si dovrebbe cambiare la dicitura locale(): http://docs.python.org/library/functions .html # locals – stephan