PyCharm -为所有构造函数参数生成字段

uwopmtnx  于 2022-11-08  发布在  PyCharm
关注(0)|答案(1)|浏览(244)

我用构造函数定义了一个类:

class Example:
    def __init__(self, a, b, c):
        ...

现在我想为每个构造函数参数声明一个字段,如下所示:

class Example:
    def __init__(self, a, b, c):
        self.a = a
        self.b = b
        self.c = c

我想自动完成这个任务。PyCharm的检查允许我为参数生成字段,但一次只能生成一个(作为Parameter x is not used的修复),这非常烦人。我如何同时为所有参数生成字段呢?
我发现最接近的是PyCharm template for python class init function,解决方案不灵活,因为它只支持固定数量的参数。而且,我觉得这是必须在成熟的IDE中实现的特性,而Idea允许这样做。
这篇文章还引用了What is the best way to do automatic attribute assignment in Python, and is it a good idea?,它讨论了autoassign,它似乎有很多缺点。
我的PyCharm版本是2019.1.3 CE。

omhiaaxx

omhiaaxx1#

最接近的处理方法是将所有参数都写在函数中:

class Xyz:
    def __init__(a, b, c):

突出显示一个参数,右键单击,然后单击“显示上下文操作
它应该显示“将字段'a'添加到类Xyz”,然后单击箭头►
并单击“对...运行检查
将检查范围指定为仅该文件或类。
然后,您的类/文件应该出现在检查结果窗口中,单击下拉箭头并突出显示参数,您应该能够“将字段添加到类Xyz”,这将添加所有您选择的字段。

class Xyz:
    def __init__(a, b, c):
        self.a = a
        self.b = b
        self.c = c

相关问题