Python中是否有類似於Python的__FUNCTION__
魔術常量?Python:一些「__magic__」屬性來引用該函數內的函數
def func(x):
print(__FUNCTION__) ## <function func at 0x00B02810>
print(__FUNCTION__.__name__) ## func
UPD:
爲了有一個例子:
import sys
def func(f = "Foo"):
b = "Bar"
print(sys._getframe().f_code) ## <code object func at 0x00B09A20, file "C:\py\func.py", line 5>
print(func.__code__) ## <code object func at 0x00B09A20, file "C:\py\func.py", line 5>, the same
print(sys._getframe().f_trace) ## None
print(sys._getframe().f_locals) ## {'b': 'Bar', 'f': 'Foo'}
print(sys._getframe().f_lineno) ## 12
if __name__ == "__main__":
func()
出於興趣,你爲什麼要這樣做? – 2013-02-20 18:32:43
@Lattyware,在PHP中我經常使用'__FUNCTION__','__METHOD__','__CLASS__'來創建像標誌一樣的優勢,以查看哪些組件運行發生。就像現在我學習Python並且一直在測試函數裝飾器一樣,我想用相同的技術來查看被調用的函數。 – Green 2013-02-20 18:53:19