在 Python 中偵測函數變數
您有一個名為「x」的變量,並且想要確定它是否指向函數。雖然檢查“x”的類型顯示它是一個函數,但嘗試使用 isinstance(x, function) 失敗。這就是 callable() 派上用場的地方。
Python 2.x 與Python 3.2 :
callable(x)
3.2 之前的Python 3.x:
3.2 之前的Pythonhasattr(x, '__call__')
> 🎜>先前的方法(如types.FunctionTypes 或spect.isfunction)有其限制。對於非 Python 函數,例如用 C 實作的內建函數,它們傳回 False。 最好「詢問」物件是否可以透過以下方式呼叫它,而不是檢查類型或適合容器。尋找 call 屬性。這確保了函數的準確識別,無論其實現如何。
以上是如何檢查Python中的變數是否引用函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!