我正在创建一个模块文件,我需要获得使用它的文件的全局变量。我试着导入它,然后得到它的全局变量,但是这会导致这个错误:
Traceback (most recent call last):
File "C:\Users\isaac\OneDrive\Coding\python\logger\file.py", line 1, in <module>
import logger
File "C:\Users\isaac\OneDrive\Coding\python\logger\logger.py", line 3, in <module>
import file as bla
File "C:\Users\isaac\OneDrive\Coding\python\logger\file.py", line 3, in <module>
log = logger.Logger('logfile', 'file')
AttributeError: partially initialized module 'logger' has no attribute 'Logger' (most likely due to a circular import)有没有办法用open(...)获得全局变量或类似的东西?
发布于 2021-08-24 15:41:54
有两种解决办法。一种方法是将全局变量从file中移出,并将它们移到第三个文件中,比如globals.py,这两个文件都可以导入。
在通过打开文件访问全局变量方面,您可以自己尝试并解析该文件,或者确实使用类似AST的方法。不过,我想上述技术将足以满足您的用例。
https://stackoverflow.com/questions/68910190
复制相似问题