• json模块学习


    1.序列化模块
    什么叫序列化, 把内存的数据类型,转换成字符串格式, 使其存在硬盘上,或通过网络传输,因为硬盘和传输只能接受bytes,所以必须将不同的数据类型转换成字符串,就是bytes类型,此过程叫序列化过程.反过来叫反序列化
    把内存数据,转成字符,叫序列化,
    把字符转成内存数据,叫反序列化,
    没有学习json之前我们这么序列化和反序列化.用str把数据变成字符串传入文件,用eval方法读出来
     1 data={
     2     "roles":[{"role":"动物","type":"pig","life":50},
     3              {"role":"人类","type":"关羽","life":80}]
     4 }
     5 f=open("game_status","w",encoding="utf-8")
     6 f.write(str(data))  #   把文件数据data,写入名称为game_status的文件中,str 是把数据变成字符串写入,因为写入硬盘要以字符串格式  write() argument must be str, not dict
     7 
     8 
     9 f=open("game_status","r",encoding="utf-8")
    10 d=f.read()
    11 d=eval(d)
    12 print(d["roles"]) #把文件已eval方式读出来

    2.json 的好处是python与其他语言之间数据转换,python语言json以后的数据在其他语言上可以直接反序列

    json的作用就是把不同的数据类型,加上引号变成json字符串类型。比如代码:

     1 import  json
     2 dic={"name":"alex"}
     3 l=[11,22,33]
     4 s='hello'
     5 i=8
     6 data=json.dumps(dic)
     7 f=open("dic","w")
     8 f.write(data)
     9 print(data)
    10 print(type(data))
    只是把数据类型转成字符串存到内存的意义
    json.dumps() json.loads()
    1,把当前状态做传输,不丢失,通过网络共享给远程其他人
    2.跨语言共享数据类型,与Java c 共同用代码.底层是字符,就是json 规则.
  • 相关阅读:
    What Solutions Does the Resource Manager Provide for Workload Management?
    Oracle Managed Files,OMF
    Client Result Cache
    Performing a Quick Tune
    [转]Oracle DB 通过SQL 优化管理性能
    [转]闪回数据归档
    Building SQL Test Cases
    性能测试
    python--递归函数、匿名函数、嵌套函数、高阶函数、装饰器、生成器、迭代器
    python--可变长参数(*args、**kwargs)、返回值(return)
  • 原文地址:https://www.cnblogs.com/xh716/p/10528267.html
Copyright © 2020-2023  润新知