首页 > 解决方案 > 如何在不阅读其代码的情况下检查函数可以接受的可接受参数?

问题描述

有没有一种方法可以检查函数可以接受的可能参数?

例如

def greet(name,msg): 

"""This function greets to
the person with the provided message"""
print("Hello",name + ', ' + msg)

输出:greet("Monica","早上好!")

可以接受的参数是“name”和“msg”

标签: pythonfunctionarguments

解决方案


为此,您可以使用检查模块 - 特别是检查.getfullargspec。

对于您的示例:

import inspect

def greet(name,msg): 
    print("Hello",name + ', ' + msg)

print(inspect.getfullargspec(greet))

输出:

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

如您所见,这为您提供了有关函数参数的大量信息。


推荐阅读