@Wolfengo
Я ещё зелёный, сильно не душите

Можно ли вызвать функцию так, чтобы перед её выполнением выполнилась ещё одна функция класса?

Я, возможно, упустил этот простой вопрос изучая язык, но сейчас не могу понять куда мне смотреть.

К примеру у меня есть класс и в нём есть функция открытия файла и функции работы с файлом. (я ведь не буду копировать код открытия для каждой функции)

Я запускаю функцию с чтением данных из файла, но при запуске этой функции, мне нужно чтобы выполнилась функция открытия этого файла
  • Вопрос задан
  • 85 просмотров
Решения вопроса 1
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
В самом простом случае вызвать метод открытия из метода чтения.

Наверное лучше сделать метод-декоратор, который до выполнения декорируемого метода открывает файл, а после - закрывает.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Lord_of_Rings
@Lord_of_Rings
Python developer
В чем проблема сделать так?
def read_file(self):
      self.open_file()


Если вам нужно вызвать эту функцию при создании экземпляра класса, то добавьте в этот класс функцию __init__

class WorkFile:
    def __init__(self):
        self.open_file()
    def open_file(self):
         # ваш код
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы