Wywołanie funkcji klasy wewnątrz __init__

Piszę kod, który pobiera nazwę pliku, otwiera plik i analizuje niektóre dane. Chciałbym to zrobić w klasie. Działa następujący kod:

class MyClass():
    def __init__(self, filename):
        self.filename = filename 

        self.stat1 = None
        self.stat2 = None
        self.stat3 = None
        self.stat4 = None
        self.stat5 = None

        def parse_file():
            #do some parsing
            self.stat1 = result_from_parse1
            self.stat2 = result_from_parse2
            self.stat3 = result_from_parse3
            self.stat4 = result_from_parse4
            self.stat5 = result_from_parse5

        parse_file()

Ale wiąże się to z umieszczeniem wszystkich maszyn do przetwarzania w zakresie__init__ funkcja dla mojej klasy. To wygląda dobrze teraz dla tego uproszczonego kodu, ale dla funkcjiparse_file ma również kilka poziomów wcięcia. Wolę zdefiniować funkcjęparse_file() jak funkcja klasy, jak poniżej:

class MyClass():
    def __init__(self, filename):
        self.filename = filename 

        self.stat1 = None
        self.stat2 = None
        self.stat3 = None
        self.stat4 = None
        self.stat5 = None
        parse_file()

    def parse_file():
        #do some parsing
        self.stat1 = result_from_parse1
        self.stat2 = result_from_parse2
        self.stat3 = result_from_parse3
        self.stat4 = result_from_parse4
        self.stat5 = result_from_parse5

Oczywiście ten kod nie działa, ponieważ funkcjaparse_file() nie wchodzi w zakres__init__ funkcjonować. Czy istnieje sposób na wywołanie funkcji klasy od wewnątrz__init__ tej klasy? Czy myślę o tym w niewłaściwy sposób?