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 相关文章推荐
python 排列组合之itertools
Mar 20 Python
python缩进区别分析
Feb 15 Python
浅析Python中的多重继承
Apr 28 Python
Python读写Json涉及到中文的处理方法
Sep 12 Python
python中异常捕获方法详解
Mar 03 Python
Python实现基本数据结构中栈的操作示例
Dec 04 Python
在CentOS6上安装Python2.7的解决方法
Jan 09 Python
Django使用unittest模块进行单元测试过程解析
Aug 02 Python
Python pandas实现excel工作表合并功能详解
Aug 29 Python
Python Collatz序列实现过程解析
Oct 12 Python
python 模块导入问题汇总
Feb 01 Python
django中websocket的具体使用
Jan 22 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过滤所有恶意字符(批量过滤post,get敏感数据)
2014/03/18 PHP
ThinkPHP3.1新特性之对分组支持的改进与完善概述
2014/06/19 PHP
php判断并删除空目录及空子目录的方法
2015/02/11 PHP
php自定义函数转换html标签示例
2016/09/29 PHP
javascript定义函数的方法
2010/12/06 Javascript
js动态移动滚动条至底部示例代码
2014/04/24 Javascript
node.js中的fs.readdir方法使用说明
2014/12/17 Javascript
javascript中call apply 的应用场景
2015/04/16 Javascript
浅谈jQuery双事件多重加载的问题
2016/10/05 Javascript
angularjs使用div模拟textarea文本框的方法
2018/10/02 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
2019/04/10 Javascript
WebSocket的简单介绍及应用
2019/05/23 Javascript
layui实现三级联动效果
2019/07/26 Javascript
[02:51]DOTA2战队出征照拍摄花絮 TI3明星化身时尚男模
2013/07/22 DOTA
[01:25:33]完美世界DOTA2联赛PWL S3 INK ICE vs Magma 第二场 12.20
2020/12/23 DOTA
Python CSV模块使用实例
2015/04/09 Python
利用Python自动监控网站并发送邮件告警的方法
2016/08/24 Python
python实现对excel进行数据剔除操作实例
2017/12/07 Python
python的dataframe和matrix的互换方法
2018/04/11 Python
20行python代码实现人脸识别
2019/05/05 Python
Python实现的服务器示例小结【单进程、多进程、多线程、非阻塞式】
2019/05/23 Python
centos7中安装python3.6.4的教程
2019/12/11 Python
python 实现Flask中返回图片流给前端展示
2020/01/09 Python
wxPython修改文本框颜色过程解析
2020/02/14 Python
Python Django中的STATIC_URL 设置和使用方式
2020/03/27 Python
python利用google翻译方法实例(翻译字幕文件)
2020/09/21 Python
python 实现数据库中数据添加、查询与更新的示例代码
2020/12/07 Python
Html5移动端适配IphoneX等机型的方法
2019/06/25 HTML / CSS
HTML5 textarea高度自适应的两种方案
2020/04/08 HTML / CSS
FirstCry阿联酋儿童和婴儿产品网上购物:FirstCry.ae
2021/02/22 全球购物
十佳班主任事迹材料
2014/01/18 职场文书
关于环保的建议书400字
2014/03/12 职场文书
信息技术课后反思
2014/04/27 职场文书
股份转让协议书范本
2015/01/27 职场文书
投资合作意向书范本
2015/05/08 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书