Python 读取JSON文件

介绍JSON
维基百科介绍JSON
JSON格式鉴定网站
JSON在线编辑器
Python中Json库不支持带BOM的UTF-8(参考网站)

JSON用于描述数据结构,有以下形式存在:(参考自维基百科)
  • 对象(object):一个对象以{开始,并以}结束。一个对象包含一系列非排序的名称/值对,每个名称/值对之间使用,分区。
  • 名称/值(collection):名称和值之间使用隔开,一般的形式是:
    {key:value}
  • 一个名称是一个字符串; 一个值可以是一个字符串,一个数值,一个对象,一个布尔值,一个有序列表,或者一个null值。
  • 值的有序列表(Array):一个或者多个值用,分区后,使用[]括起来就形成了这样的列表,形如:
    [collection, collection]
  • 字符串:以一对"括起来的一串字符。
  • 数值:一系列0-9的数字组合,可以为负数或者小数。还可以用e或者E表示为指数形式。
  • 布尔值:表示为true或者false。

读取json文件并转换为字典

# -*- coding:utf-8 -*-
import json
file_path = 'json文件相对路径或者据对路径'
with open(file_path) as f:
    js = json.load(f)  # js是转换后的字典

json文件内容

{
    "大国":['中国','美国','俄罗斯']
}

读取报错

错误信息

解决方法

  1. json库不支持带BOM的UTF-8的格式编码,所以使用notepad++对json进行编码格式转换
  2. json数据测试,对json数据结构进行测试,有也可能是json数据本身出现问题,发现是双引号的问题,将json文件内容改为
{
    "大国":["中国","美国","俄罗斯"]
}

程序运行成功


运行成功,调试内容
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • /''' #test.json "time":"2017-04-25 " ''freq'':98 "power":...
    Mitchell520阅读 595评论 0 0
  • 《裕语言》速成开发手册3.0 官方用户交流:iApp开发交流(1) 239547050iApp开发交流(2) 10...
    叶染柒丶阅读 27,900评论 5 19
  • 我发现我不论写点什么东西都喜欢用“我”这个字开头。 我我我我 我我我我 我我我我 我我我我 。
    like_a_dogout阅读 85评论 0 0
  • 一大早,就深深地感受了一回鸡飞狗跳的生活——与两娃的拉锯战。上一周两娃轮流感冒发烧终于渐渐好转,请假一星期的萌不愿...
    芳草即天涯阅读 328评论 0 1