在导入模块时隐藏外部模块(例如关于代码完成)

2022-03-31 00:00:00 python python-import code-completion

问题描述

我在一个包中有几个模块(一种工具包),我在项目中使用它。结构如下:

the_toolkit:
    __init__.py
    basic_io.py
    simple_math.py
    matrix_kit.py
    ...

现在,当我使用IPythonVIM中的代码完成时,使用

从包中导入模块
from the_toolkit import matrix_kit
我得到了一组matrix_kit.py导入的模块/函数(arraymathloglogginformat_exc等)),以及matrix_kit定义的实际函数。 由于我对matharray模块的代码完成不感兴趣,我如何筛选出其他所有内容?

许多蟒蛇建议__init__.py是空的,还是这样做?


解决方案

我遇到了同样的问题,并通过在我的所有导入中添加前导下划线来解决它。它看起来不是很棒,但它实现了你想要的。

from __future__ import division as _division
import numpy as _np
import pandas as _pd
使用From导入模块时,仅导入以下划线开头的内容。导入*。或在IPython或Spyder中使用制表符完成时。

相关文章