AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘

项目场景:

在使用eli5画图的时候,需要调用module 'jinja2.ext' 模块,结果报错。


问题描述

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第1张图片

 


原因分析:

模块jianja2.ext没有属性with_

因为版本原因,导致jianja2部分属性 会矛盾——明明有属性但显示没属性。


解决方案:

按照以下的方案即可解决。

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第2张图片

 1.找到自己正在使用的项目(pythonProject),在venv文件夹内找到Lib再找到site-packages。

2.在site-packages库中找到eli5,展开这个库里面含有的模块。

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第3张图片

3.找到html.py文件,双击html.py 查看源码。

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第4张图片

4.源码开头(我这里是第24行源码)可以明显看到:

      extensions = ['jinja2.ext.with_'] 

报错是因为这行代码无法读取到jinja2.ext.with_属性。一般来说,电脑下载的jinja2是有这个属性的,但由于代码冲突导致无法正确使用。

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第5张图片

 

 5.如下图将这行代码注释掉.,然后重新运行代码。切记!!!不要乱改其他地方的源代码(否则以后就会出BUG了)。

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第6张图片

 

 6.如果有强迫症的同学,可以再改回来,如下图。发现还能正常使用就好了,如果发现改回来不能正常使用,就如5步骤一样去掉就行。

 

AttributeError: module ‘jinja2.ext‘ has no attribute ‘with_‘_第7张图片

总结:

        这个问题比较复杂,设计到的内容比较多,就不过多解释了。总之,按我以上的步骤操作即可。

你可能感兴趣的:(python,bug,python)