从另一个包导入python模块
发布时间:2020-12-20 13:41:21 所属栏目:Python 来源:网络整理
导读:我有一个具有以下结构的脚本 ./ /foo __init__.py /bar __init__.py module.py 我想在foo和bar包上使用module.py,但我找不到导入它的方法! 我可以将模块放在两个包中,但如果我需要进行任何更改,我将不得不在两个包中进行. 解决方法 假设我们有这样的结构,这
我有一个具有以下结构的脚本
./ /foo __init__.py /bar __init__.py module.py 我想在foo和bar包上使用module.py,但我找不到导入它的方法! 我可以将模块放在两个包中,但如果我需要进行任何更改,我将不得不在两个包中进行. 解决方法
假设我们有这样的结构,这实际上有点棘手:
├── bar │?? ├── __init__.py │?? └── some_bar.py ├── foo │?? ├── __init__.py │?? └── some_foo.py └── something.py 从some_foo.py中的something.py获取对象的正确方法是添加: # foo/some_foo.py from something import some_module 然后从顶级目录运行some_foo作为模块,使用-m选项如下: python -m foo.some_foo 在something.py中添加一些print语句来测试它,如果一切正常,你应该在运行some_foo后看到something.py的一些输出.记住你需要从顶层运行some_foo,而不是从foo目录运行. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |