Ror*_*ory 9 python protocol-buffers
在Python中,是否可以在运行时将Google Protocol Buffers .proto
文件转换为读取该数据的python类?Python是一种非常动态的语言.当您使用protoc
将.proto
文件转换为python源代码时,生成的代码会大量使用python元类,因此它已经非常动态.
理想情况下,我在考虑这样的事情:
import whatever
module = whatever.load_from_file("myfile.proto")
Run Code Online (Sandbox Code Playgroud)
这可能吗?
(我是协议缓冲区的新手,如果我的问题没有意义,请告诉我)
从理论上讲,所有的部分都是为了使这项工作成功.Python protobuf实现可以将C++ .proto
解析器库(libprotoc
)称为C扩展,以获取描述符,然后可以将它们提供给元类.
但是,据我所知,没有人完全把它捆绑在一起.(免责声明:我的知识已经有几年了,我可能错过了一个新的开发,但我在文档中看不到任何内容.)
顺便提一下,Cap'n Proto的Python实现确实做了你所描述的,证明它是可能的.但是如果您需要使用Protobuf格式,这对您没有帮助.
(披露:我是Google大多数开源Protobuf代码的作者,我也是Cap'n Proto的作者.)
归档时间: |
|
查看次数: |
3012 次 |
最近记录: |