Python中的详细__init__方法是不是很糟糕?

Tim*_*oks 6 python oop

我有一个用Python编写的程序,它执行以下操作:

用户输入文件夹的名称.在该文件夹中有8-15个.dat文件,具有不同的扩展名.

程序打开这些dat文件,将它们输入到SQL数据库中,然后允许用户选择对数据库所做的不同更改.然后将数据库导出回.dat文件.可以执行大约5-10种不同的操作.

我计划设计的方法是为每组文件创建一个标准类.用户将输入文件夹的名称,并且将创建具有某些属性(文件名,文件字典,文件版本(有不同版本)等)的对象.确定这些属性需要打开其中一些文件,读取文件名等.

这个行动应该在__init__方法中进行吗?或者,是否应该在方法中调用的不同实例方法中执行此操作__init__?或者这些方法应该在其他地方,只有在程序中的其他地方需要属性时才能调用它们?

我已经用Java编写了这个程序.我有一个构造函数,它调用类中的其他方法来设置对象的属性.但我想知道Python中的标准做法是什么.

Rom*_*huk 1

看来您描述的操作初始化,因此将它们放入__init__. 另一方面,这些操作似乎相当昂贵,并且可能在程序的其他部分有用,因此您可能希望将它们封装在某个单独的函数中。