Python 如何查看函数属性?

Python 如何查看函数属性?,python,python-3.x,function,attributes,Python,Python 3.x,Function,Attributes,在Python中,函数(函数对象)可以具有属性 例如: def func(a): return a*a func.attr = 1 是否有办法查看此属性及其值 我尝试了inspect.getfullargspec来自inspect模块,但它只显示函数参数 FullArgSpec(args=['a'], varargs=None, varkw=None, defaults=None, kwonlyargs=[], kwonlydefaults=None, annotations={})

在Python中,函数(函数对象)可以具有属性

例如:

def func(a):
    return a*a

func.attr = 1
是否有办法查看此属性及其值

我尝试了
inspect.getfullargspec
来自
inspect
模块,但它只显示函数参数

FullArgSpec(args=['a'], varargs=None, varkw=None, defaults=None, kwonlyargs=[], kwonlydefaults=None, annotations={})

与任何其他对象一样,您可以使用
vars

def func(a):
    return a*a

func.attr = 1

print(vars(func))
# {'attr': 1}

与任何其他对象一样,您可以使用
vars

def func(a):
    return a*a

func.attr = 1

print(vars(func))
# {'attr': 1}
Python
vars()
函数可用于获取整个对象

代码

def func(a):
    return a**3

func.function = "Cubic Function"
func.arguments = "Integers"

print(func(99))

print(vars(func))

print(vars(func)["function"])

print(vars(func)["arguments"])

输出

970299
{'function': 'Cubic Function', 'arguments': 'Integers'}
Cubic Function
Integers
Python
vars()
函数可用于获取整个对象

代码

def func(a):
    return a**3

func.function = "Cubic Function"
func.arguments = "Integers"

print(func(99))

print(vars(func))

print(vars(func)["function"])

print(vars(func)["arguments"])

输出

970299
{'function': 'Cubic Function', 'arguments': 'Integers'}
Cubic Function
Integers

getfullargspec
用于获取完整参数规范,即函数所需的参数。如果要查看属性,请尝试使用例如
dir
getfullargspec
获取函数所需的完整参数规范。如果要查看属性,请尝试使用例如
dir