一尘不染

python类__init__函数的PyCharm模板

python

我有一个带有几个初始化变量的python类:

class Foo(object):
    def __init__(self, d1, d2):
        self.d1 = d1
        self.d2 = d2

有没有一种方法可以在PyCharm中自动创建此代码,因此我不必显式键入:

self.dn = dn

这种模式在我的代码中经常发生。有没有更好的(Pythonic)方法来初始化类?

我已经看过这篇文章(用Python进行自动属性分配的最佳方法是什么,这是个好主意吗?),但是我不想使用装饰器,因为它会使代码的可读性降低。


阅读 702

收藏
2021-01-20

共1个答案

一尘不染

您可以从制作自定义实时模板开始。我不确定是否可以通过这种方式自动生成数量可变的参数,但是,对于两个构造函数参数,实时模板可能如下所示:

class $class_name$:
    def __init__(self, $arg1$, $arg2$):
        self.$arg1$ = $arg1$
        self.$arg2$ = $arg2$
$END$

这就是我在PyCharm中设置的方式:

在此处输入图片说明


或者,您可以更改设置实例属性的方式并将其归纳为N个参数,请参见:

2021-01-20