导入不起作用 [英] Import not Working

查看:30
本文介绍了导入不起作用的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有两个文件,分别是a.pyb.py

在a.py中, 我们有

import xxx
from b import *

在b.py中,我们有一个需要module xxx的函数。 现在,当从a.py调用b.py中的函数时,它找不到模块xxx

为什么会这样?这里有什么解决方案? 由于某些原因,我无法在b.py中执行import xxx

MCV:

a.py

import xxx
from b import *
fun()

b.py

def fun():
    xxx.dosomething()

错误:

Global name xxx not defined

推荐答案

在Python中,所有模块都有自己的全局命名空间,并创建包含所有内置名称的命名空间,并且模块不与其他模块共享它仅内置命名空间是通用的,可用于所有模块,当您将其添加到模块全局命名空间而不是内置命名空间时

IMPORT语句做两件事:

如果请求的模块尚不存在,则执行导入文件中的代码

Two使其可以作为一个模块使用。后续导入语句将跳过第一步。

要点是,模块中的代码将只执行一次,无论它从各种其他模块导入多少次。

SOURCE

这篇关于导入不起作用的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆