Domande taggate «getattr»


14
Che cos'è esattamente getattr () e come si usa?
Di recente ho letto della getattr()funzione . Il problema è che non riesco ancora a capire l'idea del suo utilizzo. L'unica cosa che capisco getattr()è che getattr(li, "pop")è lo stesso della chiamata li.pop. Non ho capito quando il libro menzionava come lo usi per ottenere un riferimento a una funzione …
295 python  getattr 

4
Comprensione della differenza tra __getattr__ e __getattribute__
Sto cercando di capire la differenza tra __getattr__e __getattribute__, tuttavia, non ci riesco. La risposta alla domanda StackTranslate.it La differenza tra __getattr__vs__getattribute__ dice: __getattribute__viene richiamato prima di esaminare gli attributi effettivi sull'oggetto e pertanto può essere difficile implementarlo correttamente. Puoi finire in infinite ricorsioni molto facilmente. Non ho assolutamente idea …


4
Come posso chiamare setattr () sul modulo corrente?
Cosa devo passare come primo parametro " object" alla funzione setattr(object, name, value)per impostare le variabili sul modulo corrente? Per esempio: setattr(object, "SOME_CONSTANT", 42); dando lo stesso effetto di: SOME_CONSTANT = 42 all'interno del modulo contenente queste righe (con il corretto object). Sto generando diversi valori a livello di modulo …

8
__getattr__ su un modulo
Come può implementare l'equivalente di a __getattr__su una classe, su un modulo? Esempio Quando si chiama una funzione che non esiste negli attributi definiti staticamente di un modulo, desidero creare un'istanza di una classe in quel modulo e invocare il metodo su di esso con lo stesso nome fallito nella …

6
Come implemento __getattribute__ senza un errore di ricorsione infinito?
Voglio sovrascrivere l'accesso a una variabile in una classe, ma restituire normalmente tutte le altre. Come posso farlo con __getattribute__? Ho provato quanto segue (che dovrebbe anche illustrare cosa sto cercando di fare) ma ottengo un errore di ricorsione: class D(object): def __init__(self): self.test=20 self.test2=21 def __getattribute__(self,name): if name=='test': return …
101 python  class  oop  recursion  getattr 
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.