python @符号的使用歸納整理一下
一. 函數
python函數修飾符@的作用是為現有函數增加額外的功能,常用于插入日志、性能測試、事務處理等等。
建立函數修飾符的規則:
(1)修飾符是一個函數
(2)修飾符取被修飾函數為參數
(3)修飾符傳回一個新函數
(4)修飾符維護被維護函數的簽名
我的了解就是把目前函數當做參數傳入到修飾函數裡執行,然後再修飾函數裡做一些操作。
def funcB(funa):
print("funcb")
#fun()
return "test"
@funcB
def funA():
print("funA")
print(funA)
/*
輸出funcb test
當把#fun() 修改為fun()的時候則為
funcb funcA test
二, @staticmethod 和 @classmethod
@staticmethod 相當于C++裡的靜态函數
@classmethod 相當于C++裡常用的一個類調用Create來建立自身的用法。
應用場景可以參考這個連結
三。@property
看這個文章就是了,這個很好了解,就是屬性,沒啥特别的