所以我的問題特別針對下面例子頂部的裝飾器。我不明白lowercasedecorator函數的第三行。我很困惑它爲什麼會返回一個列表,如果它在方括號中,這意味着它是一個列表的權利?另外,我不完全理解該行'func(* args)'的末尾,這是否意味着'func'的任意參數(在這種情況下,它將是displayPeople)?這個Python裝飾器裏發生了什麼?
def lowercasedecorator(func):
def wrapper(*args):
return [i.lower() for i in func(*args)]
return wrapper
class People():
totalpeople = 0
def __init__(self, name, age, phone):
self.name=name
self.age=age
self.phone=phone
People.totalpeople += 1
@lowercasedecorator
def displayPeople(self):
return self.name, self.age, self.phone
ben = People("bEn", "20", "5034950293")
print ben.displayPeople()
提示:displayPeople沒有裝飾器會返回什麼類型的對象? –
so displayPeople()returns ... A list?那種混淆了我,因爲本=人(「本」,「20」,「4252454」),所以我認爲這是一個元組。 – stephan
很難在[PEP 318](http://www.python.org/dev/peps/pep-0318/) – 2013-10-27 23:36:26