Pertanyaan yang diberi tag «getattr»


14
Apa itu getattr () persis dan bagaimana cara menggunakannya?
Saya baru saja membaca tentang getattr()fungsinya . Masalahnya adalah saya masih belum bisa memahami ide penggunaannya. Satu-satunya hal yang saya mengerti tentang getattr()adalah bahwa getattr(li, "pop")adalah sama dengan menelepon li.pop. Saya tidak mengerti ketika buku itu menyebutkan bagaimana Anda menggunakannya untuk mendapatkan referensi ke suatu fungsi tanpa mengetahui namanya sampai …
295 python  getattr 

4
Memahami perbedaan antara __getattr__ dan __getattribute__
Saya mencoba memahami perbedaan antara __getattr__dan __getattribute__, bagaimanapun, saya gagal dalam hal itu. The jawaban ke Stack Overflow pertanyaan Perbedaan antara __getattr__vs__getattribute__ mengatakan: __getattribute__dipanggil sebelum melihat atribut sebenarnya pada objek, dan bisa jadi sulit untuk diterapkan dengan benar. Anda dapat berakhir dalam rekursi tak terbatas dengan sangat mudah. Saya sama …



8
__getattr__ pada modul
Bagaimana mengimplementasikan yang setara dengan a __getattr__di kelas, di modul? Contoh Saat memanggil fungsi yang tidak ada dalam atribut modul yang didefinisikan secara statis, saya ingin membuat instance kelas dalam modul itu, dan memanggil metode di atasnya dengan nama yang sama seperti yang gagal dalam pencarian atribut pada modul. class …

6
Bagaimana cara mengimplementasikan __getattribute__ tanpa kesalahan rekursi tak terbatas?
Saya ingin mengganti akses ke satu variabel di kelas, tetapi mengembalikan semua variabel secara normal. Bagaimana saya melakukannya __getattribute__? Saya mencoba yang berikut (yang juga harus menggambarkan apa yang saya coba lakukan) tetapi saya mendapatkan kesalahan rekursi: class D(object): def __init__(self): self.test=20 self.test2=21 def __getattribute__(self,name): if name=='test': return 0. else: …
101 python  class  oop  recursion  getattr 
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.