python 变量数据使用 json 进行序列化与反序列化操作

python 变量数据使用 json 进行序列化与反序列化操作

python数据格式存在多种多样的(字典、列表、元组等等)数据格式,它们都只是存在于运行程序的时候,程序运行结束之后一切就消失了。但是我们如果需要保存到硬盘中,这该怎么做呢?我们不会把他们都转化为字符串吧。如果转换为字符串之后我们该怎么取出来呢?

这时候就需要使用到 json 把数据进行序列化之后保存到硬盘中了,这样子下一次取出来就不会丢失格式了,这样子是不是很方便呢?

序列化操作

多种多样格式序列化后保存到硬盘

复杂方法

list = [1,'a',6]
list = json.dumps(list)           # 把列表进行序列化
with open('a.txt',"w") as f:      # 写入到文件中,保存到硬盘中
    f.write(list)
    

简单方法

list = [1,'a',6]
with open('a.txt',"w") as f:     
    f.dump(list,f)                 # 只需要这一行就可以实现上面序列化操作

反序列化操作

把保存的序列化之后的内容取出来到内存中

复杂方法

with open('a.txt',"r") as f:      # 从硬盘中读出数据
    list = f.read()               # 读取文件中的内容
    list = json.loads(list)       # 把内容进行反序列化输出
    print(list) 
    

简单方法

with open('a.txt','r') as f:
    list = json.load(f)

python变量数据序列化与反序列化的操作是不是很简单呢。

注意:
1、 json格式的内容字符串内容使用的使用双引号;
2、python数据的集合不能进行序列化操作;

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/115153.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • jmeter并发测试教程_jmeter怎么进行并发测试

    jmeter并发测试教程_jmeter怎么进行并发测试jmeter是Apache组织开发的基于Java的压力测试工具,用于对软件做压力测试,很多用户使用的时候不知道jmeter怎么进行并发测试,接下来就跟小编一起来看看吧,有需要的小伙伴不要错过!jmeter怎么进行并发测试1、打开jmeter.bat文件,添加线程组,编辑线程数,这里设置100个线程数,循环2次,就是一台机器发送100*2=200个请求。2、点击线程组,右击添加→取样器→HTTP请求…

    2022年9月1日
    3
  • cefsharp教程_常见的数据分析方法有哪些

    cefsharp教程_常见的数据分析方法有哪些本节汇总一些关于cefsharp的使用方法,包括c#调用HTML页面中的js,也可以是HTML中的按钮调用c#的方法。汇总后,方便以后使用和查看。

    2022年9月15日
    4
  • Visual Studio 2008/2010中Xaml开发格式设置技巧

    Visual Studio 2008/2010中Xaml开发格式设置技巧

    2021年8月6日
    52
  • python wpa_wpa_passphrase「建议收藏」

    python wpa_wpa_passphrase「建议收藏」辛苦历程之前一直用NetworkManager管理无线网络,后来换了fvwm以后,NetworkManager就不知道怎么用了,虽然查到有一个命令行版本的,客户端叫nmcli,但是无奈不知道怎么用,只好用wicd了,虽然也挺方便,但是占用的内存真是大——虽然只有16MB,但是相比它实现的功能,这个投入产出比已经非常低了。昨天因为某些搞笑原因,重装了系统,发现安装wicd还要安装一堆gnome和py…

    2025年6月24日
    2
  • 海思Hi3798处理器参数,Hi3798芯片详细信息介绍「建议收藏」

    海思Hi3798处理器参数,Hi3798芯片详细信息介绍「建议收藏」Hi3798CV200集成4核64位高性能CortexA53处理器、内置NEON加速引擎,强大的CPU处理能力可以满足各种差异化的业务需求。在码流兼容性、在线视频播放的流畅性、图像质量以及整机性能方面保持业界最好的用户体验。支持4K2KP60@10bit超高清视频解码和显示,支持H.265/HEVC、H.264/AVC、AVS+、MVC、MPEG2、MPEG4、VC-1、VP6、VP…

    2022年6月30日
    626
  • NodeJs学习—模块

    NodeJs学习—模块

    2021年9月8日
    66

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号