Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/349.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
查找包含给定类或函数的模块(python)_Python_Search_Module - Fatal编程技术网

查找包含给定类或函数的模块(python)

查找包含给定类或函数的模块(python),python,search,module,Python,Search,Module,可能吗?例如,如果我不记得模块的名称,我也不想打开google,我会的 >>> findmodule('someclass') 'somemodule' >>> from somemodule import someclass “我不想打开谷歌”这几乎不是一个实际问题,是吗?这是可能的,至少你可以在ipython中导入选项卡,它会找到一种列出所有模块的方法。因此,您可以检查该类的每个模块。我猜您必须对sys.path进行非常精细的搜索,递归地导入在那里可以找

可能吗?例如,如果我不记得模块的名称,我也不想打开google,我会的

>>> findmodule('someclass')
'somemodule'
>>> from somemodule import someclass

“我不想打开谷歌”这几乎不是一个实际问题,是吗?这是可能的,至少你可以在ipython中
导入选项卡
,它会找到一种列出所有模块的方法。因此,您可以检查该类的每个模块。我猜您必须对
sys.path
进行非常精细的搜索,递归地导入在那里可以找到的所有内容,然后搜索您找到的内容。这是。。。实际上,Python的导入不是应该如何工作的。(因为设计是根据需要加载模块。)在terminal@kitty
bpython
可能会构建该索引-它甚至可以在您根据上下文按TAB键时按需构建索引。(当你按下import键时,列出所有可导入的模块要比递归扫描它们容易得多。)据我所知,Python中没有内置这样的索引,我怀疑构建索引是否容易。