详细解读python操作json文件的详细

目录
  • json支持的格式:
    • 代码操作
      • 1.json转化为python
      • 2. python序列化为json
  • 总结

json转化为python表示反序列化

python转化为json表示为序列化

json是python的内置模块,不需要安装

json支持的格式:

Json Python
对象(object) 字典(dict)
数组(array) 列表(list)
字符串(string) 字符串(str)
整数(int) 整数(int)
实数(float) 实数(float)
true True
false False
null None

代码操作

1.json转化为python

json提供的两个函数支持json字符串反序列化为一个python对象

json.loads(s)
其中s表示字符串

import json

str_json = '{"name":"张三","age":24}'
res = json.loads(str_json)
print(res, type(res))  #{'name': '张三', 'age': 24} <class 'dict'>

json.load(fb)
fb:表示为文件对象test.json

test.json

{
  "name":"张三",
  "age":24,
  "friends": [{
    "name": "李四",
    "age": 23
  },
    {
      "name": "王麻子",
      "age": 24
    }],
  "hobby": ["玩游戏","看电影"]
}
import json

with open('test.json', 'r', encoding='utf-8') as f:
    res = json.load(f)
    print(res, type(res))
  # {'name': '张三', 'age': 24, 'friends': [{'name': '李四', 'age': 23}, {'name': '王麻子', 'age': 24}], 'hobby': ['玩游戏', '看电影']} <class 'dict'>

json字符串一般不会单独出现

json.loads('"test"')  #'test'

一般会放在字典或者列表中

json.loads('["test1","test2","test3"]')  #['test1','test2','test3']

2. python序列化为json

json.dumps(obj,ensure_ascii=True,indent=None,sort_keys=False)

  • obj:表示为python 对象
  • ensure_ascii: 默认为 True,输出保证将所有输入的非 ASCII 字符转义。如果 ensure_ascii 是 False,这些字符会原样输出。
  • indent:一个非负整数或者字符串,JSON 数组元素和对象成员会被美化输出为该值指定的缩进等级。如果缩进等级为零、负数或者 “”,则只会添加换行符。None(默认值)选择最紧凑的表达。使用一个正整数会让每一层缩进同样数量的空格。如果 indent 是一个字符串(比如 "\t''),那个字符串会被用于缩进每一层。
  • sort_keys:为 True(more 为 False),表示字典的输出会以键的顺序排序。
import json

data = {
  "name":"张三",
  "age":24,
  "friends": [{
    "name": "李四",
    "age": 23
  },
    {
      "name": "王麻子",
      "age": 24
    }],
  "hobby": ["玩游戏","看电影"]
}
res = json.dumps(data,ensure_ascii=False,indent=2, )
print(res, type(res))

打印的结果为

{
  "name": "张三",
  "age": 24,
  "friends": [
    {
      "name": "李四",
      "age": 23
    },
    {
      "name": "王麻子",
      "age": 24
    }
  ],
  "hobby": [
    "玩游戏",
    "看电影"
  ]
} <class 'str'>

json.dump(obj,fb,ensure_ascii=True,indent=None,sort_keys=False)

  • obj:表示为python对象
  • fb:表示为文本写打开的文件对象
import json

data = {
  "name":"张三",
  "age":24,
  "friends": [{
    "name": "李四",
    "age": 23
  },
    {
      "name": "王麻子",
      "age": 24
    }],
  "hobby": ["玩游戏","看电影"]
}
with open('test1.json', 'w', encoding='utf-8') as f:
    json.dump(data, fp=f, ensure_ascii=False, indent=2)

写入的结果为

test1.json

{
  "name": "张三",
  "age": 24,
  "friends": [
    {
      "name": "李四",
      "age": 23
    },
    {
      "name": "王麻子",
      "age": 24
    }
  ],
  "hobby": [
    "玩游戏",
    "看电影"
  ]
}

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注我们的更多内容!

(0)

相关推荐

  • python3 循环读取excel文件并写入json操作

    文件内容: excel内容: 代码: import xlrd import json import operator def read_xlsx(filename): # 打开excel文件 data1 = xlrd.open_workbook(filename) # 读取第一个工作表 table = data1.sheets()[0] # 统计行数 n_rows = table.nrows data = [] # 微信文章属性:wechat_name wechat_id title abstr

  • 一文秒懂python读写csv xml json文件各种骚操作

    Python优越的灵活性和易用性使其成为最受欢迎的编程语言之一,尤其是对数据科学家而言. 这在很大程度上是因为使用Python处理大型数据集是很简单的一件事情. 如今,每家科技公司都在制定数据战略. 他们都意识到,拥有正确的数据(干净.尽可能多)会给他们带来关键的竞争优势. 数据,如果使用有效,可以提供深层次的.隐藏在表象之下的信息. 多年来,数据存储的可能格式显著增加,但是,在日常使用中,还是以 CSV . JSON 和 XML 占主导地位. 在本文中,我将与你分享在Python中使用这三种流

  • Python Json数据文件操作原理解析

    引言 接口测试就是数据的测试,在测试之前,需要准备好测试数据,而测试数据可以用数据库.excel.txt和csv方式,当然还有一种方式,那就是使用json文件来储存测试数据.常用的方式就是这些. 设计思路 python读取json文件和读取txt方式是一样的,获取路径,判断路径是否存在,获取文件名及绝对路径,打开读取数据,提取关键数据,关闭文件.具体流程,画了一个草图方便理解: 具体代码实现 @author: Leo @software: pycharm @file: operate_json.

  • JSON文件及Python对JSON文件的读写操作

    一,什么是JSON文件 JSON和XML都是互联网上数据交换的主要载体. 在JSON出现之前,大家一直用XML来传递数据.因为XML是一种纯文本格式,所以它适合在网络上交换数据.XML本身不算复杂,但是,加上DTD.XSD.XPath.XSLT等一大堆复杂的规范以后,任何正常的软件开发人员碰到XML都会感觉头大了,最后大家发现,即使你努力钻研几个月,也未必搞得清楚XML的规范.于是,道格拉斯·克罗克福特(Douglas Crockford)发明了JSON这种超轻量级的数据交换语言,由于JSON非

  • 详细解读python操作json文件的详细

    目录 json支持的格式: 代码操作 1.json转化为python 2. python序列化为json 总结 json转化为python表示反序列化 python转化为json表示为序列化 json是python的内置模块,不需要安装 json支持的格式: Json Python 对象(object) 字典(dict) 数组(array) 列表(list) 字符串(string) 字符串(str) 整数(int) 整数(int) 实数(float) 实数(float) true True fa

  • 如何基于python操作json文件获取内容

    这篇文章主要介绍了如何基于python操作json文件获取内容,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 写case时,将case 写到json文件比写到,写python一定要学会处理json 以下,是要处理的json 处理操作包括:打开json文件,获取json文件内容,关闭json文件,读取内容中的对应key的value { "name": "BeJson", "url": "

  • C++操作.json文件的超详细新手教程

    目录 1.JSON简介 1.1 什么是JSON: 1.2 JSON的优缺点: 1.3 JSON的存储: 2.jsoncpp库介绍 2.1 jsoncpp库的配置使用: 2.2 jsoncpp库内部构成: 3.json文件读取(例) 3.1 json文件: 3.2 源码: 3.3 结果图: 总结 1.JSON简介 1.1 什么是JSON: JSON是一种纯字符串形式的数据,它本身不提供任何方法(函数),非常适合在网络中进行传输.JavaScript.PHP.Java.Python.C++等编程语言

  • Python读写JSON文件的操作详解

    目录 JSON JSON 起源 JSON 样例 Python 原生支持 JSON 序列化 JSON 简单的序列化示例 JSON 反序列化 简单的反序列化示例 应用案例 编码和解码 JSON JSON 起源 JSON 全称 JavaScript Object Notation .是处理对象文字语法的 JavaScript 编程语言的一个子集.JSON 早已成为与语言无关的语言,并作为自己的标准存在. JSON 样例 { "data":[ { "id": "1

  • python解析.pyd文件的详细代码

    有的时候,为了对python文件进行加密,会把python模块编译成.pyd文件,供其他人调用.拿到一个.pyd文件,在没有文档说明的情况下,可以试试查看模块内的一些函数和类的用法. 首先 import XXX(pyd的文件名) 然后直接 print(dir(XXX)) print(help(xxx)) 其中dir( ) 列出了属性和方法 而hlep()直接列出了其中的函数以及参数,并且是源码的函数名和类型,非常直观. 例如我这里的一个例子,输出如下: ['RC', '__doc__', '__

  • 详细解读Python字符串的使用与f-string

    目录 Python字符串介绍 创建多行字符串 连接 Python 字符串 访问字符串元素 获取字符串的长度 切片字符串 Python 字符串是不可变的 Python字符串介绍 字符串是一系列字符.在 Python 中,引号内的任何内容都是字符串.您可以使用单引号或双引号.例如: message = 'This is a string in Python' message = "This is also a string" 如果一个字符串包含一个单引号,你应该把它放在双引号里,像这样:

  • python操作toml文件的示例代码

    # -*- coding: utf-8 -*- # @Time : 2019-11-18 09:31 # @Author : cxa # @File : toml_demo.py # @Software: PyCharm import toml import os BASE_DIR = os.path.dirname(os.path.abspath(__file__)) class FileOperation: def __init__(self): self.dic = dict() self

  • 使用python把json文件转换为csv文件

    了解json整体格式 这里有一段json格式的文件,存着全球陆地和海洋的每年异常气温(这里只选了一部分):global_temperature.json { "description": { "title": "Global Land and Ocean Temperature Anomalies, January-December", "units": "Degrees Celsius", "b

  • Python操作HDF5文件示例

    目录 引言 创建文件和数据集 写数据集 读数据集 引言 在Matlab操作HDF5文件中已经详细介绍了HDF5文件已经利用Matlab对其进行操作的方法.这篇文章总结一下如何在Python下使用HDF5文件.我们仍然按照Matlab操作HDF5文件的顺序进行,分别是创建HDF5文件,写入数据,读取数据. Python下的HDF5文件依赖h5py工具包 创建文件和数据集 使用`h5py.File()方法创建hdf5文件 h5file = h5py.File(filename,'w') 然后在此基础

随机推荐