Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah Saya Boleh Melaksanakan Pengambil dan Penetap Secara Python?
Apakah Cara Pythonic untuk Menggunakan Getters dan Setters?
Menggunakan getter dan setter menawarkan cara yang mudah untuk mengawal akses kepada atribut peribadi dalam Python . Berikut ialah beberapa pendekatan yang biasa digunakan:
Pendekatan Berasaskan Kaedah:
Anda boleh mencipta kaedah getter dan setter yang berasingan, seperti yang ditunjukkan di bawah:
def set_property(property, value): def get_property(property):
Walau bagaimanapun, pendekatan ini tidak dianggap sangat Pythonic. Cara yang lebih digemari ialah menggunakan:
Manipulasi Atribut Objek:
Anda boleh terus memberikan nilai kepada atribut objek menggunakan notasi titik:
object.property = value value = object.property
Pendekatan ini mudah digunakan dan difahami, tetapi ia tidak menawarkan sebarang pengkapsulan atau kawalan ke atas atribut akses.
Sifat Python:
Cara paling Pythonic untuk melaksanakan getter dan setter ialah menggunakan sifat. Ini membolehkan anda mentakrifkan kaedah getter, setter dan deleter dalam satu baris kod:
class C(object): @property def x(self): """I'm the 'x' property.""" print("getter of x called") return self._x @x.setter def x(self, value): print("setter of x called") self._x = value @x.deleter def x(self): print("deleter of x called") del self._x c = C() c.x = 'foo' # setter called foo = c.x # getter called del c.x # deleter called
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Melaksanakan Pengambil dan Penetap Secara Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!