__init__方法中的参数,numbers没有被写上去:比如这样,def __init__(self, num)
但是却这样 进行了self.numbers=L的操作,这样真的可以吗?
但是却这样 进行了self.numbers=L的操作,这样真的可以吗?
2016-12-21
#coding=utf-8 class Person(object): def __init__(self, num): #self.numbers是实例属性,通过实例创建,类中无该部分 self.numbers = L = [] #1 s = Person(10) print (s.numbers) #>> 对象调用实例属性,正确 print (Person.numbers) #>> 类调用实例属性,报错,错误提示:(AttributeError: type object 'Person' has no attribute 'numbers') s.score = 30 #2 print (filter(lambda x: x[0:2] != '__',dir(s))) #3 ''' #3中输出了['numbers', 'score'],说明s实例中有这两个属性 因此#1和#2的实际操作方式是相同 '''
举报