Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Memanggil Kaedah Kelas Induk dari Kelas Kanak-kanak dalam Python?

Bagaimanakah Saya Memanggil Kaedah Kelas Induk dari Kelas Kanak-kanak dalam Python?

Patricia Arquette
Lepaskan: 2024-12-08 13:59:14
asal
399 orang telah melayarinya

How Do I Call Parent Class Methods from Child Classes in Python?

Memanggil Kaedah Kelas Induk dalam Kelas Kanak-Kanak Python

Apabila mentakrifkan hierarki kelas dalam Python, adalah penting untuk mengetahui cara mengakses kaedah kelas induk daripada kelas terbitan. Dalam bahasa seperti Perl dan Java, kata kunci "super" memudahkan ini, tetapi dalam Python, terdapat pendekatan yang kelihatan berbeza.

Memperkenalkan Fungsi super()

Untuk gunakan kaedah kelas induk daripada kelas anak dalam Python, gunakan fungsi super(). Fungsi ini membolehkan anda mengakses atribut dan kaedah kelas induk tanpa menyatakan secara eksplisit nama kelas induk.

class Foo(Bar):
    def baz(self, **kwargs):
        return super().baz(**kwargs)
Salin selepas log masuk

Dalam contoh di atas, kelas Foo ialah anak kelas Bar. Di dalam kaedah baz kelas Foo, super() digunakan untuk memanggil kaedah baz kelas Bar induk.

Memilih masuk ke Kelas Gaya Baharu (Python 2 sahaja)

Dalam Python 2, anda mesti memilih secara eksplisit menggunakan kelas gaya baharu untuk menggunakan fungsi super(). Untuk melakukan ini, isytiharkan kelas induk menggunakan kata kunci super:

class Foo(Bar):
    def baz(self, arg):
        return super(Foo, self).baz(arg)
Salin selepas log masuk

Dengan menerima fungsi super(), anda memudahkan pangkalan kod anda, mengurangkan gandingan antara kelas dan meningkatkan kebolehselenggaraan hierarki kelas mendalam anda dalam Ular sawa.

Atas ialah kandungan terperinci Bagaimanakah Saya Memanggil Kaedah Kelas Induk dari Kelas Kanak-kanak dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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