当使用getmembers(module, isfunction)时,忽略python模块中导入的函数



是否有办法忽略python模块中导入的函数?

当使用以下模块module.py时:

from inspect import getmembers, isfunction
import foo
def boo():
   foo()
def moo():
   pass

funcs = [mem[0] for mem in getmembers(module, isfunction)]

funcs =: ['boo','moo', 'foo'](包括导入函数'foo')

我想让函数只包含['boo', 'moo']

你必须测试__module__属性;它是一个字符串,命名完整的模块路径:

funcs = [mem[0] for mem in getmembers(module, isfunction)
         if mem[1].__module__ == module.__name__]

相关内容

  • 没有找到相关文章

最新更新