“from pylons import config”和“import”之间的区别桥塔.config'

2024-10-02 10:25:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图将公司模块导入到我的软件中,但出现错误:

ImportError: No module named config

发件人:

^{pr2}$

显然,im导入所需的模块桥塔.config但在我的虚拟环境中找不到它。在

如果我去终端尝试一些Python脚本,我似乎可以找到配置文件,如果我尝试:

from pylons import config

但如果我尝试的话会出错:

import pylons.config

为什么会这样?在

有人能告诉我怎么去哪里:

 from pylons.config import config

去工作。请记住,我不能更改此模块的代码,只能更改导入该模块或我自己的系统文件的代码。在


更新

如果任何人找到这个页面有类似的问题,你可能会发现你正在尝试运行两个不同版本的塔模块。在

例如,您正在创建一个名为myApp的登录应用程序。有一些Python模块可以帮助处理登录名pyLogin。在

首先用python安装pyLogin设置.py安装。这会将库添加到站点包中,并更新它所依赖的任何库,例如SqlAlchemy。在

接下来,以同样的方式安装myApp,这将再次更新库和依赖项。在

如果pyLoginmyApp使用不同版本的Pylons,则会出现此问题。例如,如果pyLogin使用的是Pylons 0.9.6,myApp使用的是Pylons 1.0,然后pyLogin代码将从myApp调用,但它将在错误的Pylons框架中运行,因此需要从Pylons import config从桥塔.config导入配置,但只能使用一个。如果它使用了错误的塔调用,那么你会发现自己有这个错误消息。在

因此,这个错误的唯一解决方案是找到与应用程序使用相同Pylons版本的早期或以后的库,或者将应用程序转换为与您使用的库相同的Pylons版本。在


Tags: 模块代码fromimport版本config应用程序软件
1条回答
网友
1楼 · 发布于 2024-10-02 10:25:46

两种用法有区别。。。在

import将Python模块加载到自己的命名空间中,from则将Python模块加载到当前名称空间。在

因此,使用from pylons import config将config导入到当前命名空间。但是尝试使用import导入classfunction是不可能的,因为没有名称空间来保存它们。。。您只能导入模块,并使用functions或{},方法是使用它们自己的名称空间,如

import pylons
....
pylons.config #to retreive config

More about import in Python

相关问题 更多 >

    热门问题