python中在對類的函數初始化時,可以傳入多個參數,甚至任意數量的參數
比如:
class Person(object):
def __init__(slef, name, age, **kw): // **kw代表不確定參數
self.name = name
self.age = age
for k, v in kw.iteritems(): //遍歷賦值 **kw相當於dict,遍歷取key,value
setattr(self, k, v)
p = Person(‘Lisa’, 18, address = 'china', gender = 'female')
print p.address // 輸出 china
print p.gender //輸出 female
拓展:
1.setattr() 設置新的屬性
setattr(self, 'address', 'asia') 等價於 self.address = 'asia'
2.getattr() 獲取屬性
getattr(p, 'name') 等價於 p.name