Rumah >pembangunan bahagian belakang >Tutorial Python >Mengapa Parameter `diri` Diwajibkan dalam Kaedah Python?
Memahami Tujuan dan Keperluan diri dalam Kaedah Python
Dalam Python, kaedah kelas biasanya termasuk parameter kendiri, yang menimbulkan persoalan tentangnya tujuan dan keperluan. Untuk menjelaskan perkara ini, mari kita pertimbangkan contoh berikut:
class MyClass: def func(self, name): self.name = name
Difahamkan bahawa diri mewakili instance MyClass yang mana func kaedah dipanggil. Walau bagaimanapun, persoalan timbul: mengapa wajib mengisytiharkan diri secara eksplisit dalam senarai parameter, dan mengapakah ia mesti digunakan dalam kod kaedah?
Prinsip Reka Bentuk: Atribusi Contoh Eksplisit
Berbeza dengan banyak bahasa lain yang secara tersirat mengendalikan atribusi contoh, Python mengikut prinsip kejelasan. Ini bermakna bahawa semua rujukan kepada atribut instance mestilah layak secara eksplisit dengan contoh yang dimilikinya. Dalam konteks kaedah, tanggungjawab ini terletak pada parameter diri.
Dalam contoh di atas, apabila memanggil func dengan my_object, parameter diri secara automatik akan mengandungi rujukan kepada my_object. Dengan menggunakan self.name, kaedah ini boleh memanipulasi secara langsung atribut nama bagi contoh khusus yang dikendalikan.
Pengisytiharan Kaedah dan Doa
Python menganggap kaedah sebagai fungsi, dengan satu-satunya perbezaan adalah parameter pertama. Apabila kaedah digunakan, tika itu diluluskan secara automatik sebagai hujah pertama, membolehkan kaedah itu mengakses dan mengubah suai atribut tika itu. Reka bentuk ini membolehkan penyepaduan lancar objek dan kaedahnya.
Sebarang parameter lain yang dihantar kepada kaedah akan diuruskan secara berasingan daripada diri sendiri. Sebagai contoh, func(self, name) menunjukkan bahawa parameter diri mewakili kejadian, manakala nama ialah argumen input tambahan.
Kesimpulan
Parameter diri dalam Python kaedah berfungsi sebagai rujukan eksplisit kepada contoh di mana kaedah itu digunakan. Pilihan reka bentuk ini selaras dengan prinsip kejelasan Python dan membolehkan kaedah untuk memanipulasi atribut contoh secara langsung.
Atas ialah kandungan terperinci Mengapa Parameter `diri` Diwajibkan dalam Kaedah Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!