首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Python:导入包含包

Python:导入包含包
EN

Stack Overflow用户
提问于 2009-01-12 18:38:15
回答 4查看 35.8K关注 0票数 62

在驻留在包中的模块中,我需要使用在该包的__init__.py中定义的函数。如何在驻留在包中的模块中导入包,以便可以使用该函数?

在模块中导入__init__不会导入包,而是导入一个名为__init__的模块,从而导致具有不同名称的两个副本...

有没有一种巨蟒式的方法来做到这一点?

EN

回答 4

Stack Overflow用户

发布于 2009-01-12 18:40:54

这并没有确切地回答您的问题,但我建议您将函数移到__init__.py文件之外,并将其移动到该包中的另一个模块中。然后,您可以轻松地将该函数导入到其他模块中。如果需要,您可以在__init__.py文件中使用一条import语句,该语句也将导入该函数(在导入包时)。

票数 23
EN

Stack Overflow用户

发布于 2009-01-12 19:13:52

如果包被命名为testmod,您的初始化文件是testmod/__init__.py,包中的模块是submod.py,那么在submod.py文件中,您应该能够说import testmod并使用在testmod中定义的任何内容。

票数 5
EN

Stack Overflow用户

发布于 2009-01-12 19:26:02

我不完全确定是什么情况,但这可能会解决你的“不同名字”的问题:

代码语言:javascript
复制
import __init__ as top
top.some_function()

或者也许?:

代码语言:javascript
复制
from __init__ import some_function
some_function()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/436497

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档