【发布时间】:2017-05-29 06:42:59
【问题描述】:
我有一个小应用程序,我想将它拆分成多个模块,以便我的代码结构更好,可读性更好。这样做的缺点是对于我导入的每个模块:
import module
然后我必须将 module.object 用于我想从该模块访问的任何对象。
在这种情况下,我不想污染全局命名空间,我想用正确的模块名称填充它,这样我就不必使用了
from module import *
为了调用一个没有模块前置的对象。
有没有一种方法可以做到这一点,而不是认为使用 from import 或 import 不好?
【问题讨论】:
-
from module import *做的事情不好用。如果你可以用不同的语法做同样的事情,不管你怎么做,它仍然是不好用的。您必须在函数前面加上其模块或显式导入函数这一事实 是好的设计,也是您应该做的。 -
所以,你想让你的代码“结构更好”,但你想直接引用符号而不用模块名???
-
我同意,
from module import *本身就是一个快捷方式,符号应该以其模块开头。 -
“我不想污染命名空间,我想填充它”——我们都很难理解这种区别。您是说要导入 一些 模块符号,而不是 全部 个?
-
谢谢文森特,我会接受并加前缀
标签: python python-2.7