项目场景:在vscode构建神经网络模型,python3.12.5+keras3.5.0。vscode报无法解析导入“keras.models”Pylance(reportMissingImports),黄色波浪线
问题描述
Pylance warning
vscode报2个问题:
无法解析导入“keras.models” Pylance(reportMissingImports)
无法解析导入“keras.layers” Pylance(reportMissingImports)
vscode已安装python-extension-pack插件,当前python版本3.12.5,已执行pip install pandas,keras,numpy,tensorflow-cpu。
代码可以运行,只是黄色波浪线不能忍啊!
代码如下:
import numpy as np
import pandas as pd
from keras.models import Sequential
from keras.layers import Dense, LSTM
原因分析:
Pylance解析子项目,没找到~
解决方案:
- keras.models => keras.api.models右键
keras
转到定义(F12)查看D:\Python\Python312\Lib\site-packages\keras_init_.py 第56行# Add everything in /api/ to the module search path.__path__.append(os.path.join(os.path.dirname(__file__),"api"))
由源码可知,将keras.models修改为keras.api.models,Pylance可以识别 - 使用tensorflow.python.keras.models
tensorflow
查看D:\Python\Python312\Lib\site-packages\tensorflow_init_.py 第37行# Do not remove this line; See https://github.com/tensorflow/tensorflow/issues/42596from tensorflow.python import pywrap_tensorflow as _pywrap_tensorflow # pylint: disable=unused-importfrom tensorflow.python.tools import module_util as _module_utilfrom tensorflow.python.util.lazy_loader import KerasLazyLoader as _KerasLazyLoader # Make sure code inside the TensorFlow codebase can use tf2.enabled() at import._os.environ["TF2_BEHAVIOR"]="1"from tensorflow.python import tf2 as _tf2_tf2.enable()
由源码可知,将keras.models修改为tensorflow.python.keras.models,Pylance可以识别from tensorflow.python.keras.models import Sequential
vscode截图:
版权归原作者 围棋号 所有, 如有侵权,请联系我们删除。