假设我有一个名为bestpackage
.
约定规定也bestpacakge
将是一个目录,sys.path
其中包含一个 __init__.py
使解释器假设它可以从中导入。
有什么方法可以为包名称设置一个变量,以便可以将目录命名为与我导入它时使用的指令不同的名称?有什么方法可以让命名空间不关心目录名称而是尊重其他一些配置?
我的超级时尚客户端开发人员非常喜欢这些性感something.otherthing.js
的项目名称,用于我们的一个较小的副项目!
编辑:
澄清一下,我的问题的主要目的是让我的客户端人员继续使用他们现有的约定(some.app.js)调用他们的“项目”(我们都添加到我们的路径中的那个)文件夹中的目录,即使在某些情况下,它们实际上是 python 包,它们将在路径上并在import
内部获取语句。我意识到这在实践中是一件非常可怕的事情,所以出于好奇我问了更多。所以这里的部分大问题是规避.
目录名称中的 (以及由此假定的包名称)意味着属性访问的事实。无法解决这个问题并不让我感到惊讶,我只是好奇是否有可能更深入地了解导入背后的“魔力”。
这里有一些很好的回应,但都依赖于执行某种经典导入,其中属性访问器.
将与目录名称发生冲突。