我的PythonQL项目中存在以下问题:
当我从Jupyter笔记本运行时,此消息会一直弹出: 警告:yacc表文件版本已过期 生成LALR表
但是,从命令行使用时,根本不会发生这种情况(我们附带预先计算的解析器文件)。
我们现在正在添加Jupyter支持并希望解决此问题,但不知道在哪里寻找解决方案...
答案 0 :(得分:0)
很可能 Jupyter notebook 和命令行使用不同的虚拟环境(或者一个使用而另一个不使用虚拟环境)。
我在 Python 2 和 Python 3 之间的公共树中有这个案例,其中:
>>> import ply
>>> ply.__version__
'3.11'
>>> import ply
>>> ply.__version__
'3.9'
ply
版本在 parser.out
文件中记录为:
Created by PLY version 3.9 (http://www.dabeaz.com/ply)
...并且在启动时另一个 ply
版本注意到“不兼容”并重新创建文件。
您只需确保在这两种情况下都安装了相同版本的 ply
。
您可以选择一个虚拟环境,使用 pip freeze >requirements.pip
,然后在另一个虚拟环境中发出 pip install -U -r requirements.pip
或类似的东西。