[发明专利]python字典和结构体间的快速转换方法在审
申请号: | 202011427236.5 | 申请日: | 2020-12-09 |
公开(公告)号: | CN112328231A | 公开(公告)日: | 2021-02-05 |
发明(设计)人: | 李杰 | 申请(专利权)人: | 远江盛邦(北京)网络安全科技股份有限公司 |
主分类号: | G06F8/30 | 分类号: | G06F8/30;G06F8/41 |
代理公司: | 北京远大卓悦知识产权代理有限公司 11369 | 代理人: | 靳雪华 |
地址: | 100089 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | python 字典 结构 快速 转换 方法 | ||
本发明公开了一种python字典和结构体间的快速转换方法,包括:S1、搭建python环境;S2、在所述python环境中构建一个转换文件;S3、在所述转换文件中创建用于字典和结构体相互转换的第一函数和第二函数;S4、利用待转换结构体定义实例M,对M进行赋值后,调用所述第一函数将赋值后的M转换为字典a,即实现结构体转换字典;S5、清空对M的赋值,调用所述第二函数将字典a内的值赋值给所述待转换结构体,即实现字典对结构体的赋值。其采用统一的函数实现字典和结构体间的相互转换,极大的提高了开发效率,增强了代码健壮性,降低了维护成本,缩小了二次开发的工作量。
技术领域
本发明涉及数据处理技术领域,特别涉及一种python字典和结构体间的快速转换方法。
背景技术
Python是一种面向对象、解释型计算机程序设计语言,由Guidovan Rossum于1989年底发明,第一个公开发行版发行于1991年。Python语法简洁而清晰,具有丰富和强大的类库。
目前许多基于python来实现的web框架,在服务器客服端模型中的数据处理都会涉及用python来处理数据,大多数web和客服端交互数据都会使用json格式来传输数据,但是,如果服务器的底层功能是用c语言来实现的,这种情况通常需要利用python使用ctypes库来调用c的动态库来实现数据交互,这个时候就会涉及到字典和ctypes中的结构体相互赋值转换的过程,传统操作为针对结构体里面的每个元素单独赋值给字典或者从字典里面取出来赋值给结构体,即都是具体到数据类型里面去依次赋值,这样开发效率低而且容易出错,而且如果结构体增加元素或者删除元素都必须修改这两种数据格式相互转换的代码,维护成本极高,代码健壮性也较差,因而,迫切需要一种能够使这两种数据格式进行相互转换的简便方法。
发明内容
本发明的一个目的是解决至少上述问题,并提供至少后面将说明的优点。
本发明还有一个目的是提供一种python字典和结构体间的快速转换方法,采用统一的函数实现字典和结构体间的相互转换,极大的提高了开发效率,增强了代码健壮性,降低了维护成本,缩小了二次开发的工作量。
为了实现根据本发明的这些目的和其它优点,提供了一种python字典和结构体间的快速转换方法,包括以下步骤:
S1、搭建python环境;
S2、在所述python环境中构建一个转换文件;
S3、在所述转换文件中创建用于字典和结构体相互转换的第一函数和第二函数;
S4、利用待转换结构体定义实例M,对M进行赋值后,调用所述第一函数将赋值后的M转换为字典a,即实现结构体转换字典;
S5、清空对M的赋值,调用所述第二函数将字典a内的值赋值给所述待转换结构体,即实现字典对结构体的赋值。
优选的是,所述的python字典和结构体间的快速转换方法中,S4中调用所述第一函数将赋值后的M转换为字典a后,还需验证所述第一函数返回的结果是否正确,是,则转至S5;否,则重新创建所述第一函数;
S5中调用所述第二函数将字典a内的值赋值给所述待转换结构体后,还需验证赋值后的待转换结构体内成员的值是否正确,是,则后续采用所述第一函数和第二函数实现字典和结构体相互转换;否,则重新创建所述第二函数。
优选的是,所述的python字典和结构体间的快速转换方法中,S1中,所述python环境中包含python ctypes库。
优选的是,所述的python字典和结构体间的快速转换方法中,字典的键和结构体的成员的名字一致时才能进行相互转换。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于远江盛邦(北京)网络安全科技股份有限公司,未经远江盛邦(北京)网络安全科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011427236.5/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种简便的外泌体提取方法
- 下一篇:一种用于小动物制动的气体麻醉装置