当前位置: 首页 > 面试题库 >

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

栾和玉
2023-03-14
问题内容

我在一个项目包中使用了几个模块(一种工具包),这些模块可以在我的项目中使用。结构如下:

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对代码完成不感兴趣,如何过滤其他所有内容matrix_kit

__init__.py许多pythonistas的建议是空的,或者是要做到这一点?


问题答案:

我遇到了同样的问题,并通过在所有导入内容中添加了下划线来解决了该问题。它看起来并不出色,但可以实现您的追求。

from __future__ import division as _division
import numpy as _np
import pandas as _pd

使用.. import *导入模块时,仅导入没有下划线的内容。或在IPython或spyder中使用制表符完成功能时。



 类似资料:
  • 除了 element-ui 组件以及脚手架内置的业务组件,有时我们还需要引入其他外部组件,这里以引入 vue-count-to 为例进行介绍。 引入依赖 在终端输入下面的命令完成安装: $ npm install vue-count-to --save 加上 --save 参数会自动添加依赖到 package.json 中去。 使用 全局注册 main.js import countTo fro

  • 我使用python unittest框架做集成测试。为了消除混淆,我想以“集成测试”的方式继承TestCase类。TestCase”而不是“unittest”。TestCase". 此外,如果我也能做“import integrationtest”而不是“import unittest”,那就更好了,类似于“unittest.main()”,最好用“integrationtest.main()”来

  • 本文向大家介绍关于python导入模块import与常见的模块详解,包括了关于python导入模块import与常见的模块详解的使用技巧和注意事项,需要的朋友参考一下 0.什么是python模块?干什么的用的? Java中如果使用abs()函数,则需要需要导入Math包,同样python也是封装的,因为python提供的函数太多,所以根据函数的功能将其封装在不同的module模块中。就这样的话,p

  • 问题 你想给某个已存在模块中的函数添加装饰器。 不过,前提是这个模块已经被导入并且被使用过。 解决方案 这里问题的本质就是你想在模块被加载时执行某个动作。 可能是你想在一个模块被加载时触发某个回调函数来通知你。 这个问题可以使用10.11小节中同样的导入钩子机制来实现。下面是一个可能的方案: # postimport.py import importlib import sys from coll

  • 问题内容: 我应该使用 要么 当 导入模块 ,并和有 改变名字没有必要/愿望 ()? 有什么区别吗?有关系吗? 问题答案: 假设是中的模块或包,没有区别*,那就没关系。这两个语句具有完全相同的结果: 如果不是模块或软件包,则第二种形式将不起作用;引发回溯: *在Python 3.6及更高版本中,包含其他模块的软件包的初始化顺序存在一个错误,即在软件包 的加载阶段,在子模块中使用 该软件包 会失败,

  • 问题内容: 我正在编写一个小脚本,该脚本从目录获取文件名,并将其传递给另一个模块,然后该模块导入文件。 因此流程类似于1)获取模块名称(将其存储在变量中)2)将此变量名称传递给模块3)导入名称存储在变量名称中的模块 我的代码就像 问题在于,当它到达import语句时,它将modulename读取为真实的模块名称,而不是存储在此变量中的值。我不确定这在python中如何工作,解决这个问题的任何帮助都