python - '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)
我关闭了程序并重新打开它,但错误仍然存在。
有谁知道如何解决它?
解决方案
通过卸载 h5py 并安装 h5py==2.10.0 解决了该问题,如下所示:
pip uninstall h5py
pip install h5py==2.10.0
如果 h5py>3,代码显示错误。
推荐阅读
- prolog - 尝试在序言中打印简单数字时出现意外错误
- mysql - 自动化 MySQL 从开发到登台的迁移
- r - Geom_bar_pattern 不将 x 轴类别视为不同
- java - 以角度嵌入 vimeos 视频
- verilog - 将二维实数组传递给 System Verilog 中的函数
- sql - 如何根据 SQL 中包含的列值的条件创建列?
- firebase - 用 JS 以外的语言编写 Firebase 函数
- java - 为什么在方法中使用后赋值?
- java - 使用有状态数据选择 Android Hilt 中的 DI 存储库/服务时,我如何处理它们?
- react-native - 如何将 createBottomTabNavigation 中的道具发送到每个选项卡屏幕?