使用Python 提取方法參數名稱
在Python 中,確定方法參數的名稱對於重構、調試或記錄程式碼至關重要。考慮一個定義為的函數:
<code class="python">def a_method(arg1, arg2): pass</code>
要取得元組形式的參數名稱,有多種方法:
使用檢查模組
使用檢查模組<code class="python">import inspect inspect.getfullargspec(a_method) # Output: (['arg1', 'arg2'], None, None, None)</code>
檢查模組提供了一組廣泛的函數來檢查程式碼物件。它支援透過inspect.getfullargspec()提取參數名稱:
這也會傳回一個包含位置參數名稱的元組(在本例中為('arg1', 'arg2'))作為關鍵字、var-args 和預設值的資訊(與本範例不相關)。
使用inspect.signature()<code class="python">inspect.signature(a_method) # Output: <Signature (a, b, c=4, *arglist, **keywords)></code>從Python 3.3 開始, spect.signature() 函數提供了可呼叫簽名的全面視圖:
這顯示了帶有所有參數資訊的簽名,包括預設值和可變長度參數。
注意事項一些可呼叫函數,特別是 CPython 中的內建函數,可能無法自省。嘗試檢查它們可能會導致 ValueError。以上是如何在 Python 中提取方法參數名稱?的詳細內容。更多資訊請關注PHP中文網其他相關文章!