Rumah > pembangunan bahagian belakang > Tutorial Python > 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
Lepaskan: 2024-10-23 08:37:01
asal
299 orang telah melayarinya

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>
Salin selepas log masuk

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

<code class="python">x = getattr(self, source)</code>
Salin selepas log masuk
  • 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!

sumber:php
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan