def__init__(self,*name): self.name=list(name) for a in self.name: self.a=1 类似于这种操作,我以为是a等于从self.name中读取的值,那么self.a就会使self.名字,但是类的属性中却只有a,没有name中的多个名字,为什么呢
这样写是可以的 class Test: def __init__(self, *name): self.name = list(name) for a in name: self.__dict__[a] = 1 t = Test(1, 2, 3) print(t.name) print(t.__dict__)