python类中函数调用_python - 在__init__中调用类函数

我正在编写一些带有文件名的代码,打开文件并解析出一些数据。 我想在课堂上这样做。 以下代码有效:

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()

但它涉及我将所有解析机制放在我班级的parse_file()函数的范围内。 对于这个简化的代码,现在看起来很好,但功能__init__也有很多级别的缩进。 我更喜欢将函数__init__定义为类函数,如下所示:

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

当然这段代码不起作用,因为函数parse_file()不在__init__函数的范围内。 有没有办法从该类的__init__内调用类函数? 或者我是否以错误的方式思考这个问题?