python报错:TypeError: Descriptors cannot be created directly.

问题

报错提示:

bash 复制代码
TypeError:不能直接创建描述符。
如果此调用来自 _pb2.py 文件,则您生成的代码已过期,必须使用 protoc >= 3.19.0 重新生成。
如果您不能立即重新生成原型,其他一些可能的解决方法是:
1. 将 protobuf 包降级到 3.20.x 或更低版本。
2. 设置 PROTOCOL_BUFFERS_PYTHON_IMPLEMENTATION=python (但这将使用纯 Python 解析并且会慢得多)。

解决方案

我现在的版本为protobuf-4.25.1。

按照报错提示,卸载当前版本的protobuf,重新安装3.19.0版本

分别执行以下命令:

bash 复制代码
pip uninstall protobuf
bash 复制代码
pip install protobuf==3.19.0

重新安装后可正常使用!

相关推荐
529宝宝起名网1 分钟前
用 Python 实现基于字源特征的名字文化评分算法:从六书部首到文化寓意的多维度评分模型
python
努力学习的代码小白3 分钟前
mem0源码学习03
python
zzj_26261010 分钟前
Python数组定义及操作
python
溪语流沙11 分钟前
【Python项目实战】部署上线:把博客发布到云服务器
服务器·开发语言·python
智码看视界17 分钟前
神经网络基础——从感知机到多层网络的数学原理
python·深度学习·神经网络·感知机·激活函数·前向传播·权重初始化
oceanstonetree18 分钟前
zgy地震数据体的显示
python·zgy
岁岁种桃花儿19 分钟前
Vue组件第六篇:Vue单文件组件
开发语言·前端·javascript·vue.js
朽棘不雕26 分钟前
Qt项目代码解释
开发语言·qt
计算机毕设定制辅导-无忧学长35 分钟前
《基于Java的旧物回收管理系统设计与实现》
java·开发语言