Якщо, раптом, в класі знадобиться функція, яка використовуватиметься лише один раз — то можна скористатися наступним прийомом:
class Foo:
def _normal_call(self):
print('Normal call.')
def call(self):
print( 'First call.')
self.call = self.__normal_call
bar = Foo()
bar.call() # First call.
bar.call() # Normal call.
bar.call() # Normal call.
Останнім рядком методу call є перевизначення цього методу в інший, а саме normal_call. Таким чином, початковий код call буде виконаний лише один раз.
#Python // #practice //
Архів книг