我常常有构造函数如下所示:
class Foo(object):
def __init__(self,a,b,c):
self.a = a
self.b = b
self.c = c
我在想,如果有一个便捷的方式来编码这样的构造函数。也许看起来像这样:
class Foo(object):
SOME_MACRO_LIKE_THINGY_THAT_SPECIFIES_THE_CONSTRUCTOR(a,b,c)
它会表现完全像上面的原始代码。
什么使我原来的版本错误是,我必须写三次Foo的每个实例变量(一次作为参数,一次作为self.a,再次作为赋值给self.a的值)。
我想这不是什么大不了的事情,但我觉得代码看起来更整齐,重复性更低。
什么是Pythonic方式来处理这种情况?
坦率地说,我喜欢原始/普通/标准的方式。我每天看到它几十次。我确切知道它是如何工作的以及它是如何工作的。这是一个地方国际海事组织,其中一个额外的抽象将大大减损你的代码的可读性。现在我必须去挖掘你可能会跳过蟒蛇魔术来做出令人惊奇的事情的宏观事物。 –