Какие из этих двух более питонны?
class A:
def __init__(self):
self.v1 = None
self.v2 = None
self.v3 = None
self.foo()
def foo(self):
self.v1, self.v2, self.v3 = ...
или:
class A:
def __init__(self):
self.v1, self.v2, self.v3 = self.foo()
def foo(self):
return ...
Что я могу сделать из себя, так это то, что в первом примере на первый взгляд неясно, что self.foo()
, пока кто-то не прочитает сам метод.
Но проблема со вторым заключается в том, что может возникнуть предупреждение о том, что: foo
метод может быть статическим.