python解析json文件

python解析json文件认识json数据json有两种数据结构:对象和数组。对象:用大括号表示,由键值对组成,每个键值对用逗号隔开。其中key必须为字符串且是双引号,value可以是多种数据类型。数组:用中括号表示,每个元素之间用逗号隔开。json中的字符串都要用双括号表示。json数据可以嵌套表示出结构更加复杂的数据。json格式与python格式的对应Python JSONd…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

  • 认识json数据
    json有两种数据结构:对象和数组。
    对象:用大括号表示,由键值对组成,每个键值对用逗号隔开。其中key必须为字符串且是双引号,value可以是多种数据类型。
    数组:用中括号表示,每个元素之间用逗号隔开。
    json中的字符串都要用双括号表示。
    json数据可以嵌套表示出结构更加复杂的数据。
  • json格式与python格式的对应
Python	           JSON
dict	           object
list, tuple        array
str	               string
int, float         number
True	           true
False	           false
None	           null
  • 将python数据与json数据相互转化
    导入json模块: import json;
    python数据转成json字符串:json_data = json.dumps(python_data);
    json字符串转成python对象:python_data = json.loads(json_data);
  • 一个例子
import json;
data1 = {
           'name' : 'jack',
            'age' : 20,
            'like': ('sing','dance','swim'),
            'score': {'chinese':80,'math':60,'english':99}
}

data2 = json.dumps(data1);
data3 = json.loads(data2);
print('原始数据');
print(data1);
print('转化成json格式');
print(data2);
print('再转化成python格式');
print(data3);
原始数据
{'name': 'jack', 'age': 20, 'like': ('sing', 'dance', 'swim'), 'score': {'chinese': 80, 'math': 60, 'english': 99}}
转化成json格式
{"name": "jack", "age": 20, "like": ["sing", "dance", "swim"], "score": {"chinese": 80, "math": 60, "english": 99}}
再转化成python格式
{'name': 'jack', 'age': 20, 'like': ['sing', 'dance', 'swim'], 'score': {'chinese': 80, 'math': 60, 'english': 99}}
  • python操作json文件
    1.把一个python类型数据直接写入json文件
    json.dump(data1, open(‘xxx.json’, “w”));
    2.直接从json文件中读取数据返回一个python对象
    data3 = json.load(open(‘xxx.json’));
  • 实例
import json;
# json.dump()  把数据写入json文件
# json.load()  把json文件内容读入python

data1 = {
           'name' : 'jack',
            'age' : 20,
            'like': ('sing','dance','swim'),
            'score': {'chinese':80,'math':60,'english':99},
            'love': None
}



#把python数据data1直接写入json文件中
json.dump(data1, open('jack.json', "w"));

#直接从json文件中读取数据返回一个python对象
data3 = json.load(open('jack.json'));
print(data3);

>>>>>
{ 
    'name': 'jack', 'age': 20,
    'like': ['sing', 'dance', 'swim'],
    'score': {'chinese': 80, 'math': 60, 'english': 99}, 
    'love': None
  }

json文件中的内容

{
  "name": "jack", 
   "age": 20,
   "like": ["sing", "dance", "swim"],
   "score": {"chinese": 80, "math": 60, "english": 99},
   "love": null
   }
  • 总结
    在用python解析json文件时可以用dumps函数先把python数据转化为json字符串,在用open函数自行把json字符串写入到文件中。也可以直接用dump函数把python数据写入到json文件中,这样更方便。
    两种写入文件的方法是等价的,相反读取文件时也有两种方法。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/189561.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号