如何在python中获得代码库中看到的干净函数签名?

如何在python中获得代码库中看到的干净函数签名?,python,function,python-3.7,inspect,function-signature,Python,Function,Python 3.7,Inspect,Function Signature,我使用inspect获取函数签名,并用Python将其打印到终端 import inspect def foo(a, b): # do something return ans func_rep = foo name = func_rep.__name__ # 'foo' args = inspect.getfullargspec(func_rep).args # ['a', 'b'] repstr = name + f'{str(tuple(args))}' print(

我使用
inspect
获取函数签名,并用Python将其打印到终端

import inspect

def foo(a, b):
   # do something
   return ans

func_rep = foo
name = func_rep.__name__   # 'foo'
args = inspect.getfullargspec(func_rep).args  # ['a', 'b']
repstr = name + f'{str(tuple(args))}'
print(repstr)   # foo('a', 'b')
如上所述,表示的输出在单引号
'a'
中有
func_args

如何在终端中获得如下输出?还是在导入的代码库中

foo(a,b) 

此代码将打印不带单引号(')的函数符号


此代码将打印不带单引号(')的函数符号


你不能用格式化的字符串吗

argstr = args[0]
  for arg in args[1:]:
    argstr +=', {}'.format(arg)
repstr='{}({})'.format(name, argstr)

你不能用格式化的字符串吗

argstr = args[0]
  for arg in args[1:]:
    argstr +=', {}'.format(arg)
repstr='{}({})'.format(name, argstr)

为什么不打印定义函数的行呢?你可以去掉所有你不需要的东西为什么不打印函数定义的行呢?你可以去掉你不需要的东西。现在,我在想为什么我自己不考虑这个。我想我需要休息一下。现在,我在想为什么我自己不考虑这个。我想我需要休息一下