Въведение
В Python частният метод е метод, който не е предназначен да се използва извън класа, в който е дефиниран. Тези методи се обозначават с префикс двойна долна черта (__) преди името им и могат да бъдат достъпни само в класа, в който са дефинирани. В тази статия ще обсъдим концепцията за частни методи в Python, техните предимства и недостатъци и как да ги използвате с примери.
Какво е частен метод в Python?
Частният метод е метод, който не е предназначен да се използва извън класа, в който е дефиниран. Тези методи се използват за реализиране на вътрешна функционалност в класа. Те не са предназначени да се използват от външен код. В Python частните методи се обозначават с двоен префикс за долна черта преди името им.
безплатен ipconfig
Пример
__method_name
Как да дефинирам частен метод в Python?
Когато програмистът иска да дефинира частен метод в Python, тогава програмистът трябва да добави двоен префикс с долна черта преди името на метода. Ето един пример:
Програма 1:
class MyClass: def __init__(self): self.__private_method() def __private_method(self): print('This is a private method.') # Instantiate, the class my_obj = MyClass()
Изход:
Обяснение:
В горния пример сме дефинирали клас, наречен MyClass. Има частен метод, наречен __private_method. Този метод се извиква от конструктора на клас (__init__) с помощта на self.__private_method(). Тъй като методът има двоен префикс с долна черта, той е частен и не може да бъде достъпен извън класа.
Програма 2:
class BankAccount: def __init__(self, account_number, balance): self.__account_number = account_number self.__balance = balance def deposit(self, amount): self.__balance += amount def withdraw(self, amount): if self.__balance >= amount: self.__balance -= amount else: print('Insufficient funds') def __display_balance(self): print('Account Balance:', self.__balance) def statement(self): print('Account Number:', self.__account_number) self.__display_balance() # create a BankAccount object my_account = BankAccount('123456789', 1000) # make some transactions my_account.deposit(500) my_account.withdraw(200) # print a statement my_account.statement()
Изход:
Обяснение:
може ли един клас да разшири множество класове
Предоставеният код дефинира клас BankAccount с методи за депозиране и теглене на средства, показване на баланса по сметката и отпечатване на извлечение по сметката. След това се създава екземпляр от този клас и към него се правят някои транзакции, последвани от отпечатване на извлечение.
Предимства на частните методи в Python
Недостатъци на частните методи в Python
Заключение
Частните методи в Python са полезна функция, която може да помогне за постигане на капсулиране и подобряване на поддръжката на кода. Въпреки че имат някои недостатъци, ползите от използването на частни методи в Python надвишават недостатъците.