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

重新安装后可正常使用!

相关推荐
软萌萌的11 天前
Java Spring Boot 修改yml配置&加载顺序规则
java·spring boot·python
Nebula嵌入式1 天前
【C语言】09-深入解析main函数
linux·c语言·开发语言·嵌入式
Dxy12393102161 天前
Linux 编译安装 Python 3.12.10(多版本共存,不破坏系统Python)
linux·运维·python
神罚天下ET1 天前
c# ACME client (补充)
开发语言·c#
小灰灰搞电子1 天前
Qt 实现魔法导航菜单源码分享
开发语言·qt
持敬chijing1 天前
Python概述
开发语言·python
赤羽尾风1 天前
NumPy快速入门
python·numpy
倒流时光三十年1 天前
第三阶段 26 · highlight 高亮(返回命中片段)
后端·python·django
lpfasd1231 天前
编程语言榜单变迁分析
开发语言·后端·scala