我在 Pycharm 上遇到了这个错误,我正在使用 BotCity 框架,当出现以下错误时,它并没有开始运行脚本进程:
> Traceback (most recent call last):
>
> File "<frozen importlib._bootstrap>", line 1176, in _find_and_load
> File "<frozen importlib._bootstrap>", line 1147, in _find_and_load_unlocked
> File "<frozen importlib._bootstrap>", line 690, in _load_unlocked
> File "<frozen importlib._bootstrap_external>", line 940, in exec_module
> File "<frozen importlib._bootstrap>", line 241, in _call_with_frames_removed
> File "D:\path\padroniza_estilo_planilha.py", line 10, in <module>
> from botcity.document_processing import *
File "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\__init__.py",
> line 1, in <module>
> from .parser import Entry, DocumentParser # noqa: F401, F403
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\__init__.py",
> line 1, in <module>
> from .document import DocumentParser # noqa: F401, F403
> ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
> File "C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\document.py",
> line 4, in <module>`
> from . import _priv_parser
>
> ImportError: cannot import name '_priv_parser' from partially initialized module`'botcity.document_processing.parser'
> (most likely due to a circular import)
> (C:\Users\Usuario\AppData\Local\Programs\Python\Python311\Lib\site-packages\botcity\document_processing\parser\__init__.py)
我已经尝试了所有方法,主要是
pip install botcity-documents
和
pip install --upgrade botcity-documents
即使表面上应该可以正常工作,但它也无法正常工作,因为在安装结束时给出了“已成功安装”消息。
遇到的错误“ImportError:无法导入名称 '_priv_parser',循环依赖”通常表明 BotCity 库中的文件之间存在循环导入问题。
循环导入的产生原因
当两个或多个 Python 模块相互导入时,就会发生循环导入。 在的例子中,看起来
botcity.document_processing.parser
模块和
botcity.document_processing.parser.document
模块可能陷入了相互导入的困境。
解决方案
由于这是一个第三方库中的问题,直接解决起来可能比较困难。可以尝试以下方法:
-
检查 BotCity 版本: 确保使用的是最新版本的 BotCity。旧版本可能存在已知的循环导入问题。尝试卸载并重新安装最新版本:
bash pip uninstall botcity-documents pip install botcity-documents
-
检查依赖项冲突: 可能存在与 BotCity 冲突的其他已安装软件包。尝试创建一个新的虚拟环境,并仅安装 BotCity 及其依赖项。
-
联系 BotCity 支持: 如果问题仍然存在,请联系 BotCity 支持寻求帮助。他们可能会提供针对此特定问题的解决方案或变通方法。
其他建议
-
简化导入:
检查的代码,看看是否可以通过仅导入所需模块或函数而不是使用
*
来简化导入语句。 - 重构代码: 如果可能,请考虑重构代码以消除循环依赖关系。这可能涉及将代码移动到不同的模块或更改模块之间的交互方式。
希望这些解决方案能帮助解决问题!如果有任何其他问题,请随时提问。
标签:python,pip,importerror,circular-dependency From: 78221959