Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 未定义全局名称“test”_Python_Python 2.7 - Fatal编程技术网

Python 未定义全局名称“test”

Python 未定义全局名称“test”,python,python-2.7,Python,Python 2.7,我有两个文件。py文件a和B 文件A使用文件B中的方法,文件B使用文件A中的方法 归档 from file_b import * def abc(): # something cba() 文件B from file_a import * def cba(): # something abc() 如果我尝试运行文件A的脚本,则会出现错误 未定义全局名称“cba” 如果我将导入更改为: import file_a 及 我的脚本运行正常 可以从文件中使用导入* 我做错什么了吗?我

我有两个文件。py文件a和B

文件A使用文件B中的方法,文件B使用文件A中的方法

归档

from file_b import *

def abc():
# something
   cba()
文件B

from file_a import *

def cba():
# something
   abc()
如果我尝试运行文件A的脚本,则会出现错误

未定义全局名称“cba”

如果我将导入更改为:

import file_a

我的脚本运行正常

可以从文件中使用导入*


我做错什么了吗?

我有3个Python PyGame文件

设置.py 雪碧 game.py 在设置中,我有全局变量和一些其他有用的常量。 如果我使用

from settings import *
然后在我的主文件game.py中,我只导入我的精灵。 如果我使用

from sprites import *
然后我还要设置精灵和设置文件的内容。 如果我说

from sprites import player
from sprites import enemy
那么我就不会得到设置的内容,即使它们被导入到那个名称空间中。。。或文件。如果我想访问game.py文件中表示颜色的元组,我必须导入它们


我希望这可以解决您的问题,或者更好地了解发生这种情况的原因,如第一条评论中所述-这是一个循环引用。

您有一个循环依赖关系,文件a的所有内容都在文件B中,因此,将B导入A也是在尝试导入自身——我在下面举了一个例子——我希望——用一个例子更好地解释它。
from sprites import player
from sprites import enemy