Python 內省

使用 內省(introspection) 可以分析函數、變量和物件。 首先,可以使用 help() 全域函數以文件字串(docstrings)的形式獲取文件。 然後,可以使用 print() 函數來獲取關於函數的資訊: def increment(n): return n + 1 print(increment) 或者物件的資訊: class Dog(): def bark(self): print('WOF!') roger = Dog() print(roger) type() 函數可以提供物件的類型: print(type(increment)) print(type(roger)) print(type(1)) print(type('test')) dir() 全域函數可以查找物件的所有方法和屬性: print(dir(roger)) id() 全域函數可以顯示任何物件在記憶體中的位置: print(id(roger)) # 140227518093024 print(id(1)) # 140227521172384 這可以用來檢查兩個變數是否指向同一個物件。 Python 的標準庫模組 inspect 提供了更多獲取物件資訊的工具,可以在這裡查看詳細內容:https://docs.python.org/3/library/inspect.html