我用构造函数定义一个类:
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。
答案 0 :(得分:2)
我最近处理这个问题的方法是在函数中编写所有参数:
class Xyz:
def __init__(a, b, c):
突出显示一个参数,右键单击,然后单击“ 显示上下文操作”
它应显示“ 将字段'a'添加到Xyz类”,然后单击箭头►
然后点击“ 在...上运行检查”
将检查范围指定为仅该文件或类。
然后,您的“类/文件”应出现在“检查结果”窗口中,单击下拉箭头并突出显示参数,您应该能够“ 向Xyz类添加字段”,这将添加所有< / strong>您选择的那些。
class Xyz:
def __init__(a, b, c):
self.a = a
self.b = b
self.c = c