相关疑难解决方法(0)

自动初始化实例变量?

我有一个python类,看起来像这样:

class Process:
    def __init__(self, PID, PPID, cmd, FDs, reachable, user):
Run Code Online (Sandbox Code Playgroud)

其次是:

        self.PID=PID
        self.PPID=PPID
        self.cmd=cmd
        ...
Run Code Online (Sandbox Code Playgroud)

有没有办法自动初始化这些实例变量,比如C++的初始化列表?它会节省大量冗余代码.

python class initialization-list

75
推荐指数
8
解决办法
3万
查看次数

setattr与kwargs,pythonic或不?

__init__()在一些具有许多参数(最多20个)的SQLAlchemy ORM类中使用这样的东西.

def __init__(self, **kwargs):
    for k, v in kwargs.iteritems():
        setattr(self, k, v)
Run Code Online (Sandbox Code Playgroud)

设置这样的属性是"pythonic"吗?

python initialization

18
推荐指数
2
解决办法
5322
查看次数