• 序列化与反序列化(重点难点)


    系列化与反序列化定义:

    序列化:在Python中,序列化指的是把python的对象编码成为json格式的字符串。

    反序列化:把json格式字符串解码为Python数据对象。

    注意:在Python中,把内置数据结构如元素,字典,列表进行序列化处理后,类型为str,而经过发序列化处理后,数据类型依然是列表和字典(元组经过序列化和反序列化后数据类型是字典,不再是元素

    在json库中,反序列化和序列化的处理分为两部分,一部分是对具体列表数据的处理,另外一部分是对文件内容的处理。

    具体列表数据的处理,代码如下:

    import json
    list1=[1,2,3,4,5]
    print("
    对列表进行序列化与反序列化处理:")
    
    print("列表为序列化之前的数据类型:",type(list1))
    #对列表1进行序列化处理
    list_str = json.dumps(list1)
    print('列表序列化后的内容:{0}和类型{1}',format(list_str,type(list_str)))
    
    #d对字符串进行反序列化处理
    str_list=json.loads(list_str)
    print("字符串list_str反序列化后的内容:{0}和类型(1)",format(str_list,type(str_list)))

    只是一个例子,字典同理,需要注意的是元祖转换后是字典。

    对对文件的处理:

    序列化的郭晨是把数据存储到文件的过程,反序列化的过程是读取文件里面的内容。

    import requests
    import json
    def login():
        querystring = {"wd":"selenium"}
        r = requests.get(url="https://www.baidu.com/s",params=querystring)
        #把服务端的数据存储到文件json.md中。
        json.dump(r.json(),open('json.md','w'))
    login()

    实战对,拉勾网自动化测试岗位进行筛选。

    代码如下:

  • 相关阅读:
    分布式系统中的限流与熔断
    迷你MVVM框架 avalonjs 0.99发布
    将一个符合URL格式的字符串变成链接
    用CSS开启硬件加速来提高网站性能(转)
    通过window.crypto.getRandomValues获得一个大于零的随机数
    jquery slideDown效果
    五个你必须知道的javascript和web debug技术
    迷你MVVM框架 avalonjs 0.98发布
    使用avalon实现SKU组合查询功能
    angular与avalon对复杂对象的修改
  • 原文地址:https://www.cnblogs.com/Chamberlain/p/11432766.html
Copyright © 2020-2023  润新知