zoukankan      html  css  js  c++  java
  • python入门之json与pickle数据序列化

    前提实例

      将一个字典存放在文件里

    #存入数据
    info = {   'name':'chy',   'age':18 } f = open("test.txt","w") f.write(str(info)) f.close()
    #读取数据
    f = open("test.txt","r") data = eval(f.read()) f.close()
    print(data["name"])

      以上使用str()和eval()函数对数据进行操作并不是规范使用,这样很low,所以对于这种字典形式的数据的录入转换,就需要引入json了。

    #存入数据
    import json
    info = {
      'name':'chy',
      'age':18
    }
    f = open("test.txt","w")
    f.write(json.dumps(info))
    f.close()
    #读取数据
    import json
    f = open("test.txt","r")
    data = json.loads(f.read())
    f.close()
    print(data["name"])

      另外pickle和json使用方式相似,pickle是python特有的,可以对python所有的数据类型进行序列化(提示,如果字典的值有函数名的话,那么在读取的程序里必须有相同函数名的函数,内容不必一样)

    #存入数据,将字典转换为二进制数据
    import pickle
    info = {
      'name':'chy',
      'age':18
    }
    f = open("test.txt","wb")
    f.write(pickle.dumps(info))
    f.close()
    #读取数据
    import pickle
    f = open("test.txt","rb")
    data = pickle.loads(f.read())
    f.close()
    print(data["name"])
  • 相关阅读:
    4. Qt的容器类
    hdu 4507 数位dp(求和,求平方和)
    MVC3和MVC4中CRUD操作
    SSL 中证书能否够使用IP而不是域名
    TinyXml快速入门(一)
    C++ TinyXml操作(含源码下载)
    Tinyxml 操作XML
    msxml 操作xml
    MFC中全局变量的定义及使用
    VC++中操作XMLWin32实例
  • 原文地址:https://www.cnblogs.com/chy-op/p/10183850.html
Copyright © 2011-2022 走看看