Merungkai Kelalaian Kurung dalam Fungsi dan Panggilan Kaedah
Dalam Python, fungsi dan kaedah dianggap sebagai objek kelas pertama. Ini bermakna ia boleh ditugaskan kepada pembolehubah, dihantar sebagai argumen kepada fungsi lain dan juga dikembalikan daripada fungsi.
Walau bagaimanapun, apabila kita memanggil fungsi atau kaedah, kita biasanya menambahkan kurungan pada namanya, seperti my_func (). Walau bagaimanapun, terdapat senario tertentu di mana meninggalkan kurungan boleh memberi manfaat.
Pertimbangkan kod berikut:
class objectTest(): def __init__(self, a): self.value = a def get_value(self): return self.value a = objectTest(1) b = objectTest(1) print(a == b) print(a.get_value() == b.get_value) print(a.get_value() == b.get_value()) print(a.get_value == b.get_value)
Output kod ini ialah:
False False True False
Keputusan yang membingungkan ini berpunca daripada fakta bahawa get_value ialah kaedah, namun kami menggunakannya seperti pembolehubah tanpa memanggilnya terlebih dahulu. Ini mungkin kerana mengecualikan tanda kurung di sekeliling fungsi atau nama kaedah mengembalikan fungsi atau objek kaedah itu sendiri, dikenali sebagai boleh panggil.
Boleh dipanggil ialah objek yang boleh dipanggil untuk melaksanakan tindakan tertentu apabila kurungan ditambah . Dalam contoh yang diberikan, a.get_value merujuk kepada objek boleh panggil yang mewakili kaedah get_value objek a.
Oleh itu, perbandingan berikut sedang dibuat:
Mengabaikan tanda kurung memberikan kita fleksibiliti dalam pelbagai senario:
Dengan memahami gelagat peninggalan kurungan dalam panggilan fungsi dan kaedah, kami memperluaskan kemungkinan kami dalam pengaturcaraan Python.
Atas ialah kandungan terperinci Bilakah Tanda Kurung Penting dalam Fungsi Python dan Panggilan Kaedah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!