Mengakses Sifat Kelas daripada Strings dalam Python
Mengakses sifat kelas daripada rentetan boleh menjadi teknik yang berguna dalam pelbagai senario pengaturcaraan. Pertimbangkan definisi kelas berikut:
<code class="python">class User: def __init__(self): self.data = [] self.other_data = [] def doSomething(self, source): # Access class property based on string value</code>
Penyelesaian:
Untuk mengakses sifat kelas secara dinamik berdasarkan nilai rentetan, anda boleh menggunakan fungsi getattr(). Begini caranya:
<code class="python">x = getattr(self, source)</code>
Dalam contoh ini, diri mewakili tika kelas Pengguna dan sumber ialah rentetan yang memegang nama harta yang ingin anda akses. Sebagai contoh, jika sumber ialah 'data_lain', kod tersebut akan mendapatkan semula sifat self.other_data.
Pelaksanaan:
Dalam kaedah doSomething(), anda boleh melaksanakan akses harta seperti berikut:
<code class="python">def doSomething(self, source): if hasattr(self, source): x = getattr(self, source)</code>
Ini menyemak sama ada sifat sumber wujud dalam kelas sebelum mengaksesnya.
Atas ialah kandungan terperinci Bagaimana untuk Mengakses Hartanah Kelas daripada Strings dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!