我最近开始使用dataclasses,它们将是3.7的一个很好的补充。我很好奇是否或者如何能够使用dataclasses重新创建这个类的相同功能。在
class Nav(object):
def __init__(self, name:str, menu, page, *submenus):
self.name = name
self.menu = menu
self.page = page
self.submenus = submenus
foo = Nav("name", "menu", "page")
这不管用。引发异常TypeError: __init__() missing 1 required positional argument: 'submenus'
我认为这是因为类没有执行参数解包的指令。是否有某种方法可以指示dataclass decorator需要解压子菜单?
我在PEP中看到了一个如何重写
__init__
的示例。在相关问题 更多 >
编程相关推荐