Memahami Perbezaan Antara Fungsi, Kaedah Tidak Terikat dan Kaedah Terikat
Memahami perbezaan antara fungsi, kaedah tidak terikat dan kaedah terikat adalah penting untuk pengaturcaraan dalam Python. Panduan ini membongkar perbezaan, menerangkan cara ia diubah dan menyediakan contoh untuk menggambarkan penggunaannya.
Fungsi
Fungsi ditakrifkan dengan pernyataan def atau lambda. Ia adalah pernyataan bersendirian yang melaksanakan operasi tertentu.
Kaedah Tidak Terikat
Di bawah Python 2, fungsi yang ditakrifkan dalam badan kelas diubah menjadi kaedah tidak terikat. Ia masih berfungsi tetapi mempunyai parameter pertama tersirat, iaitu kelas.
Kaedah Terikat
Apabila kaedah tidak terikat diakses pada contoh kelas, ia ditukar ke dalam kaedah terikat. Contoh kelas dihantar secara automatik sebagai parameter diri pertama kepada kaedah.
Transformasi
Penggunaan
Contoh
Pertimbangkan kod berikut:
<code class="python">def f1(self): pass class C(object): f1 = f1</code>
Di sini, f1 ialah fungsi, C.f1 ialah kaedah tidak terikat dan C().f1 ialah kaedah terikat.
Python 3 Distinction
Python 3 menghapuskan konsep kaedah tidak terikat. Fungsi yang diakses pada kejadian kelas hanya dikembalikan sebagai fungsi asal.
Atas ialah kandungan terperinci Berikut adalah beberapa tajuk berasaskan soalan yang sesuai dengan artikel: Memfokuskan pada Perbezaan Utama: * Fungsi, Kaedah Tidak Terikat dan Kaedah Terikat dalam Python: Apakah Perbezaannya? * Python: Bagaimana fungsi Functio. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!