Python解析json文件相关知识学习


Posted in Python onMarch 01, 2016

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。它基于JavaScript(Standard ECMA-262 3rd Edition - December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。

今天用python解析一个文本文件,格式如下:

[
{
"Key":"android.permission.ACCESS_CHECKIN_PROPERTIES",
"Title":"访问检入属性",
"Memo":"允许对检入服务上传的属性进行读/写访问。普通应用程序不能使用此权限。",
"Level":0
},
{
"Key":"android.permission.ACCESS_COARSE_LOCATION",
"Title":"大概位置",
"Memo":"访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。",
"Level":1
},
{
"Key":"android.permission.ACCESS_COARSE_LOCATION",
"Title":"大概位置",
"Memo":"访问大概的位置源(例如蜂窝网络数据库)以确定手机的大概位置(如果可以)。恶意应用程序可借此确定您所处的大概位置。",
"Level":1
}
]

开始采用open('filepath').readlines()的方法读取,这样读取的内容都存取到一个列表中,但是我要取每一个{}中的内容取不到,于是考虑用split(',')的方法分离开来,结果把每一个{}里面的内容也根据","分开了。后来请教了网友,说用json方式读取。于是采用以下方式:

#-*-encoding:utf--*-
import json
f = file(r'C:\Users\Tim\Desktop\test.json')
jsonobj = json.load(f)
#列表用序号来查询
print jsonobj[]['Memo']
f.close

运行之后报以下错误:

ValueError: No JSON object could be decoded

重新将json文件以UTF8无BOM方式保存了一下,运行成功了。

另外,对于读取json string可以用以下方式:

s = json.loads('{"name":"test", "type":{"name":"seq", "parameter":["", ""]}}')
print s
print s.keys()
print s["name"]
print s["type"]["name"]
print s["type"]["parameter"][]

以上内容给大家介绍了Python解析json文件相关知识,希望对大家有所帮助!

Python 相关文章推荐
Eclipse + Python 的安装与配置流程
Mar 05 Python
使用python的chardet库获得文件编码并修改编码
Jan 22 Python
python判断windows系统是32位还是64位的方法
May 11 Python
在Python中用get()方法获取字典键值的教程
May 21 Python
Python编程判断一个正整数是否为素数的方法
Apr 14 Python
python 连接sqlite及简单操作
Jun 30 Python
人工智能最火编程语言 Python大战Java!
Nov 13 Python
python+pandas+时间、日期以及时间序列处理方法
Jul 10 Python
Python八皇后问题解答过程详解
Jul 29 Python
Python关键字及可变参数*args,**kw原理解析
Apr 04 Python
Python实现的扫码工具居然这么好用!
Jun 07 Python
Python必备技巧之函数的使用详解
Apr 04 Python
使用简单工厂模式来进行Python的设计模式编程
Mar 01 #Python
Python文件处理
Feb 29 #Python
python 默认参数问题的陷阱
Feb 29 #Python
简要讲解Python编程中线程的创建与锁的使用
Feb 28 #Python
Python中time模块和datetime模块的用法示例
Feb 28 #Python
python 写的一个爬虫程序源码
Feb 28 #Python
Python基础语法(Python基础知识点)
Feb 28 #Python
You might like
php简单的会话类代码
2011/08/08 PHP
PHP魔术引号所带来的安全问题分析
2014/07/15 PHP
CI框架学习笔记(一) - 环境安装、基本术语和框架流程
2014/10/26 PHP
php的curl封装类用法实例
2014/11/07 PHP
浅谈php正则表达式中的非贪婪模式匹配的使用
2014/11/25 PHP
php单链表实现代码分享
2016/07/04 PHP
总结PHP中数值计算的注意事项
2016/08/14 PHP
php strftime函数获取日期时间(switch用法)
2018/05/16 PHP
PHP实现类似题库抽题效果
2018/08/16 PHP
浅谈PHP array_search 和 in_array 函数效率问题
2019/10/15 PHP
基于jquery1.4.2的仿flash超炫焦点图播放效果
2010/04/20 Javascript
jQuery 拖动层(在可视区域范围内)
2012/05/24 Javascript
jQuery实现二级下拉菜单效果
2016/01/05 Javascript
js实现不重复导入的方法
2016/03/02 Javascript
Angularjs过滤器使用详解
2016/05/25 Javascript
利用Angularjs和bootstrap实现购物车功能
2016/08/31 Javascript
关于List.ToArray()方法的效率测试
2016/09/30 Javascript
JavaScript实现定时页面跳转功能示例
2017/02/14 Javascript
vue eslint简要配置教程详解
2019/07/26 Javascript
layui表格分页 记录勾选的实例
2019/09/02 Javascript
JQuery获得内容和属性方法解析
2020/05/30 jQuery
ant design的table组件实现全选功能以及自定义分页
2020/11/17 Javascript
[42:04]DOTA2上海特级锦标赛主赛事日 - 2 胜者组第一轮#3Secret VS OG第一局
2016/03/03 DOTA
python skimage 连通性区域检测方法
2018/06/21 Python
python简单验证码识别的实现方法
2019/05/10 Python
解决Pycharm中恢复被exclude的项目问题(pycharm source root)
2020/02/14 Python
简单了解如何封装自己的Python包
2020/07/08 Python
python利用google翻译方法实例(翻译字幕文件)
2020/09/21 Python
美国百年历史早餐食品供应商:Wolferman’s
2017/01/18 全球购物
工商管理专业职业生涯规划
2014/01/01 职场文书
个人求职信范文分享
2014/01/31 职场文书
《小动物过冬》教学反思
2014/04/17 职场文书
入职担保书怎么写
2014/05/12 职场文书
诉讼授权委托书
2014/10/15 职场文书
战略性融资合作协议书范本
2014/10/17 职场文书
吧主申请感言怎么写
2015/08/03 职场文书