Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Mengakses Sifat Kelas Secara Dinamik Menggunakan Pembolehubah String dalam Python?

Bagaimana untuk Mengakses Sifat Kelas Secara Dinamik Menggunakan Pembolehubah String dalam Python?

Patricia Arquette
Patricia Arquetteasal
2024-10-23 08:37:01159semak imbas

How to Access Class Properties Dynamically Using String Variables in Python?

Mengakses Sifat Kelas daripada String dalam Python

Apabila bekerja dengan kelas, mungkin perlu mengakses sifat secara dinamik berdasarkan nilai sesuatu pembolehubah rentetan. Pertimbangkan kelas berikut:

<code class="python">class User:
    def __init__(self):
        self.data = []
        self.other_data = []

    def doSomething(self, source):
        # Task: access self.other_data if source is 'other_data'</code>

Untuk mengakses sifat kelas secara dinamik berdasarkan pembolehubah rentetan, anda boleh menggunakan fungsi getattr. Begini caranya:

<code class="python">x = getattr(self, source)</code>
  • diri ialah tika kelas.
  • sumber ialah pembolehubah rentetan yang mengandungi nama sifat untuk diakses.

Dalam contoh anda, jika sumber ialah 'data_lain', getattr akan mengembalikan nilai self.other_data. Pendekatan ini berfungsi untuk mana-mana nama atribut kelas yang sah, termasuk self.data dan self.other_data dalam kes anda.

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Sifat Kelas Secara Dinamik Menggunakan Pembolehubah String dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn