c# 中有一个非常有用的构造。如果我需要创建一个类的实例,并且需要设置的属性不在构造函数中,那么可以像这样在一行中完成
var mc = new MyClass() { Prop1 = 1, Prop2 = "qwe" };
是否可以在 python 中做类似的事情?
一般来说,你需要收集一个列表
list = [MyClass(el) for el in otherList]
唯一的问题是什么都不能传递给 MyClass 构造函数。在这种情况下,如何创建一个实例并在一行中设置 1 个或多个属性?
升级版:
这个问题与上一个问题相似,但这些答案不适合我。也许这是因为那里提出的问题本身没有那么具体。
UPD2:
哦,是的,问题仍然不同。那里有人问如何在机器上挂一个类初始化函数,我问如何使用现成的类,没有自动化的提示。一般来说,我建议您仔细阅读这两个问题,然后一切都会变得清晰
没有这样的语法。
但是您可以创建一个辅助函数:
并使用它:
并且你可以替换 __init__ (一般来说,选项不是很好,但你也可以):
并使用这个类: