首页 > 解决方案 > 'str' 对象在 Python 中没有用于 Tensorflow 的属性 'decode'

问题描述

我想运行一个代码。它是使用 Tensorflow 用 Python3 编写的。我可以运行代码,但是当代码运行时,我尝试在单独的 Anaconda Prompt 中运行另一个代码并进行一些更改。然后我停止了代码。现在,当我尝试再次运行类似代码而不进行任何更改时,它给了我以下错误:

AttributeError: 'str' object has no attribute 'decode'

错误是指 tensorflow\python\keras 包如下:

hdf5_format.py. line 711, in load_weights_from_hdf5_group
original_keras_version = f.attrs['keras_version'].decode('utf8')

这是我的代码中出现错误的某些部分:

self.encoder.load_weights(weights_file, by_name = True)

我关闭了程序并重新打开它,但错误仍然存​​在。

有谁知道如何解决它?

标签: pythontensorflowkeras

解决方案


通过卸载 h5py 并安装 h5py==2.10.0 解决了该问题,如下所示:

pip uninstall h5py
pip install h5py==2.10.0

如果 h5py>3,代码显示错误。


推荐阅读