Memahami TypeError: Hilang Argumen Diperlukan "diri" dalam Python
Apabila bekerja dengan contoh dan kaedah kelas Python, adalah penting untuk memahami konsep daripada parameter "diri". Isu ini timbul apabila memanggil kaedah kelas secara terus tanpa menginstant objek, mengakibatkan pengecualian "TypeError: Missing 1 positional argument: 'self'".
Untuk menangani isu ini, adalah penting untuk membuat instantiate objek kelas terlebih dahulu , yang boleh dicapai dengan menggunakan nama kelas diikuti dengan kurungan. Dalam kod yang diberikan, bukannya memanggil terus Pump.getPumps(), nyatakan objek dahulu dan kemudian akses kaedah getPumps(). Berikut ialah kod yang diperbetulkan:
class Pump: def __init__(self): print("init") def getPumps(self): pass # Create an object of the Pump class p = Pump() # Call the getPumps() method through the object p.getPumps()
Parameter "diri" merujuk kepada tika semasa kelas dan ia dihantar secara automatik kepada semua kaedah tika. Apabila memanggil kaedah kelas secara terus tanpa instance, Python tidak tahu objek mana kaedah itu harus beroperasi, maka ralat "hujah 'diri' yang hilang".
Dengan menginstant objek dahulu, anda mewujudkan sambungan antara kaedah dan data objek. Ini membenarkan kaedah untuk mengakses dan memanipulasi atribut objek, seperti yang dimaksudkan dalam pengaturcaraan berorientasikan objek.
Atas ialah kandungan terperinci Mengapa Memanggil Kaedah Kelas Python Secara Terus Menghasilkan 'TypeError: Hilang Argumen Diperlukan 'diri''?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!