inspect --- 檢視活動物件

原始碼:Lib/inspect.py


The inspect module provides several useful functions to help get information about live objects such as modules, classes, methods, functions, tracebacks, frame objects, and code objects. For example, it can help you examine the contents of a class, retrieve the source code of a method, extract and format the argument list for a function, or get all the information you need to display a detailed traceback.

There are four main kinds of services provided by this module: type checking, getting source code, inspecting classes and functions, and examining the interpreter stack.

Types and members

The getmembers() function retrieves the members of an object such as a class or module. The functions whose names begin with "is" are mainly provided as convenient choices for the second argument to getmembers(). They also help you determine when you can expect to find the following special attributes (see Import-related attributes on module objects for module attributes):

Type

屬性

描述

class

__doc__

documentation string

__name__

name with which this class was defined

__qualname__

qualified name

__module__

name of module in which this class was defined

__type_params__

A tuple containing the type parameters of a generic class

method

__doc__

documentation string

__name__

name with which this method was defined

__qualname__

qualified name

__func__

function object containing implementation of method

__self__

instance to which this method is bound, or None

__module__

name of module in which this method was defined

函式

__doc__

documentation string

__name__

name with which this function was defined

__qualname__

qualified name

__code__

code object containing compiled function bytecode

__defaults__

tuple of any default values for positional or keyword parameters

__kwdefaults__

mapping of any default values for keyword-only parameters

__globals__

global namespace in which this function was defined

__builtins__

builtins namespace

__annotations__

mapping of parameters names to annotations; "return" key is reserved for return annotations.

__type_params__

A tuple containing the type parameters of a generic function

__module__

name of module in which this function was defined

traceback

tb_frame

frame object at this level

tb_lasti

index of last attempted instruction in bytecode

tb_lineno

current line number in Python source code

tb_next

next inner traceback object (called by this level)

frame

f_back

next outer frame object (this frame's caller)

f_builtins

builtins namespace seen by this frame

f_code

code object being executed in this frame

f_globals

global namespace seen by this frame

f_lasti

index of last attempted instruction in bytecode

f_lineno

current line number in Python source code