如何为一个外部类的嵌套类分配值?
例如,假设我们有这个内部类。
class animal(NamedTuple)
class dog(NamedTuple)
name: str
weight: int
class cat(NamedTuple)
color: str
name: str
我想在另一个地方将其初始化,如下所示,但它不能编译。
AnimalDic = animal(dog(name="snoopy", weight="10"), cat(color="black", name="tom")
有没有办法使之成为可能?
答案 0 :(得分:2)
不要嵌套它们。在之前定义两个“内部”类:
class Dog(NamedTuple):
name: str
weight: int
class Cat(NamedTuple):
color: str
name: str
class Animal(NamedTuple):
dog: Dog
cat: Cat
AnimalDic = Animal(Dog(name="snoopy", weight="10"), Cat(color="black", name="tom")
我也固定了你的外壳。类名不要使用小写。