Pycharm 错误导入错误警报,尽管代码可以执行

Pycharm 错误导入错误警报,尽管代码可以执行

我是 PyCharm IDE 的新手(习惯使用 VS 代码)。我在 IDE 上收到导入错误警报,其中包含以下代码行:

from tensorflow.keras.preprocessing.text import Tokenizer
Error: Cannot find reference 'keras' in '__init__.py'

但当我真正点击运行时,它完美地打印了输出,而 IDE 上没有任何错误。

我处于虚拟环境“/home/instantinopaul/.virtualenvs/tfcert/bin/python”(与项目解释器设置相同)中,它指向/usr/bin/python3.8

Tensorflow 仅安装在虚拟环境中,而不是全局安装。

版本详细信息:Python 版本:3.8 Tensorflow 版本:2.9.0 PyCharm 2023.1(社区版)构建号 #PC-231.8109.197,构建于 2023 年 3 月 29 日运行时版本:17.0.6+10-b829.5 amd64 VM:JetBrains sro 的 OpenJDK 64 位服务器 VM Linux 5.19.0-38-generic GC:G1 年轻代,G1 老一代内存:1988M 核心:12 注册表:debugger.new.tool.window.layout=true ide.experimental.ui=true

当前桌面:ubuntu:GNOME Ubuntu 22.04

答案1

似乎自 tf 2.6 以来,所有 IDE(至少 Vs code 和 pycharm)都存在自动完成错误的问题。发生这种情况的原因是 tensorflow 通过延迟加载方式加载 keras,而 IDE 无法解决此问题。

请查看 github 上的这个问题帖子PyCharm 无法解析 tensorflow.keras 下的任何内容

有两种方法可以解决此问题

  1. 尝试修改文件 site-packages/tensorflow/在里面.py 靠近第 387 行 上面的帖子中提到过。
  2. 使用,import keras.api._v2.keras as keras因为这似乎是 tensorflow 自身加载的精确包。

相关内容