如何修复';没有名为';tensorflow.contrib';对于python项目?
我在github中发现了一个聊天机器人程序,并希望运行该程序以更好地理解它。但每次我试着运行这个程序,它都会说 没有名为“tensorflow.contrib”的模块如何修复';没有名为';tensorflow.contrib';对于python项目?,tensorflow,Tensorflow,我在github中发现了一个聊天机器人程序,并希望运行该程序以更好地理解它。但每次我试着运行这个程序,它都会说 没有名为“tensorflow.contrib”的模块 我应该怎么做来修复这个错误?由其他专家解释:这是一个有趣的发现,我希望这能帮助在Anaconda或类似集成环境下开发的其他人,在这些环境中,您的程序不是直接从命令行运行的,例如“python myprogram.py” 问题可能是由于程序本身名为tensorflow.py。它在一个环境中运行,在这个环境中,它不是作为“主”模块启动
我应该怎么做来修复这个错误?由其他专家解释:这是一个有趣的发现,我希望这能帮助在Anaconda或类似集成环境下开发的其他人,在这些环境中,您的程序不是直接从命令行运行的,例如“python myprogram.py” 问题可能是由于程序本身名为tensorflow.py。它在一个环境中运行,在这个环境中,它不是作为“主”模块启动的,而是由另一个Python程序(本例中是anaconda)加载的 以这种方式加载python程序时,解释器将其作为模块读取并将其放入模块列表中(与文件同名),因此现在有sys.modules[“tensorflow”]指向加载的用户程序(而不是已安装的tensorflow模块)。当遇到“import tensorflow as tf”行时,Python会看到“tensorflow”已经被导入,只需执行tf=sys.modules[“tensorflow”],这是对您自己的tensorflow.py的引用(这已经是一个问题,但您不必启用tf.eager\u execution()然而,如果您这样做了,它将失败,因为您的tensorflow.py没有这样的函数) 现在,有趣的部分是:
import tensorflow.contrib.eager as tfe
Python已经导入了“tensorflow”(您的模块!),因此它希望在加载的tensorflow.py所在的目录中找到任何子模块。特别是,它希望该目录是一个Python包(其中包含init.py),但显然不是,因此出现了“…不是包”错误消息。tf.contrib.data已被删除尝试降级tensorflow版本: pip3安装tensorflow==1.14
用于在单机上安装多个tensorflow版本您找到的代码可能是用tensorflow 1.x编写的,但您已经安装了tensorflow 2.x。可使用兼容性模块,而不是降级TensorFlow:
import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()
来源:可能您正试图在Windows上运行它,请尝试在您的终端上运行它: pip安装cloudbiolinux==0.3a pip安装帮助程序 pip安装控制器
我试图用这个问题中提供的答案修复可能的重复,但根本不起作用。plz,help.tf.\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。