一.json模块

  作用:

  用于【字符串】和 【python基本数据类型】 间进行转换

  Python的Json模块序列化与反序列化的过程分别是 encoding和 decoding

  encoding 把一个Python对象编码转换成Json字符串;decoding 把Json格式字符串解码转换成Python对象。 

与pickle区别:

json是可以在不同语言之间交换数据的,而pickle只在python之间使用

json只能序列化最基本的数据类型,而pickle可以序列化所有的数据类型,包括类,函数都可以序列化

  函数:

  dump  --序列化python数据类型对象为JOSN格式的类文件对象,dump    列表-》字符串 -》 类文件对象

  load    --从josn类文件对象中反序列为PYTHON数据类型对象, 打开文件=》读取内容=》python数据类型如(列表、字典)

    dumps  --序列化python数据类型对象为字符串格式的josn对象,python数据类型如(列表、字典)-》JOSN字符串

    loads  --将josn字符串反序列化为PYTHON数据类型,josn字符-》python数据类型如(列表、字典)

  举例:

import josn
#序列化PYTHON数据类型为JSON格式的类文件并写入
dic = {'k1':1,'k2':2}
json.dump(dic,open('db','w'))
#从类文件中反序列化为python数据对象
r = json.load(open('db','r'))
print(r)
import json

#将PYTHON对象序列化为字符串格式的JOSN对象
li = ["a","b","c"]
result = json.dumps(li)
print(result,type(result))

#运行结果
["a", "b", "c"] <class 'str'>
import json

li = '[1,2,3,4]'
#将字符串反序列化为python数据对象
result = json.loads(li)
print(result,type(result))

#运行结果
[1, 2, 3, 4] <class 'list'>

注:反序列化时注意字典内部要使用双引号 ("")

2. 正常显示json内容

JSON是一个很棒的序列格式,如今广泛应用在API和web服务中,但是很难用裸眼来看大数据量的JSON,它们很长,还在一行里。

 

可以用参数 indent 来更好地打印JSON数据,这在跟 REPL或是日志打交道的时候很有用:

>>> import json
>>> print(json.dumps(data))  # No indention
{"status": "OK", "count": 2, "results": [{"age": 27, "name": "Oz", "lactose_intolerant": true}, {"age": 29, "name": "Joe", "lactose_intolerant": false}]}
>>> print(json.dumps(data, indent=2))  # With indention
{
  "status": "OK",
  "count": 2,
  "results": [
    {
      "age": 27,
      "name": "Oz",
      "lactose_intolerant": true
    },
    {
      "age": 29,
      "name": "Joe",
      "lactose_intolerant": false
    }
  ]
}

 

二.configparser

  作用:

  configparser用于处理特定格式的文件,其本质上是利用open来操作文件

指定格式:

# 注释1
;  注释2
 
[section1] # 节点
k1 = v1    #
k2:v2       #
 
[section2] # 节点
k1 = v1    #

指定格式
View Code

相关文章:

  • 2021-08-29
  • 2021-08-01
  • 2021-11-30
  • 2022-12-23
  • 2021-11-15
  • 2021-11-29
  • 2022-01-01
猜你喜欢
  • 2021-05-21
  • 2022-02-01
  • 2021-12-24
  • 2021-07-16
  • 2021-12-22
  • 2022-01-10
  • 2022-03-10
相关资源
相似解决方案