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进行TCP网络编程的教程
Apr 29 Python
django接入新浪微博OAuth的方法
Jun 29 Python
基于Python __dict__与dir()的区别详解
Oct 30 Python
python pandas 如何替换某列的一个值
Jun 09 Python
Python 爬取携程所有机票的实例代码
Jun 11 Python
python可视化篇之流式数据监控的实现
Aug 07 Python
Python 实现文件读写、坐标寻址、查找替换功能
Sep 11 Python
Python 音频生成器的实现示例
Dec 24 Python
python3 logging日志封装实例
Apr 08 Python
解决Keras中循环使用K.ctc_decode内存不释放的问题
Jun 29 Python
python 判断一组数据是否符合正态分布
Sep 23 Python
jupyter notebook指定启动目录的方法
Mar 02 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
PHPMYADMIN导入数据最大为2M的解决方法
2012/04/23 PHP
php中将汉字转换成拼音的函数代码
2012/09/08 PHP
PHP实现邮件群发的源码
2013/06/18 PHP
PHP实现权限管理功能示例
2017/09/22 PHP
PHP crypt()函数的用法讲解
2019/02/15 PHP
jquery中的$(document).ready()使用小结
2014/02/14 Javascript
coffeescript使用的方式汇总
2015/08/05 Javascript
javascript中对变量类型的判断方法
2015/08/09 Javascript
jQuery使用cookie与json简单实现购物车功能
2016/04/15 Javascript
js 动态添加元素(div、li、img等)及设置属性的方法
2016/07/19 Javascript
针对JavaScript中this指向的简单理解
2016/08/26 Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
2017/03/10 Javascript
解决Layui选择全部,换页checkbox复选框重新勾选的问题方法
2018/08/14 Javascript
angularJs在多个控制器中共享服务数据的方法
2018/09/30 Javascript
vue使用el-upload上传文件及Feign服务间传递文件的方法
2019/03/15 Javascript
vue-cli 项目打包完成后运行文件路径报错问题
2019/07/19 Javascript
JS使用正则表达式实现常用的表单验证功能分析
2020/04/30 Javascript
Python模仿POST提交HTTP数据及使用Cookie值的方法
2014/11/10 Python
对Python中画图时候的线类型详解
2019/07/07 Python
对django中foreignkey的简单使用详解
2019/07/28 Python
pytorch cuda上tensor的定义 以及减少cpu的操作详解
2020/06/23 Python
在pytorch中动态调整优化器的学习率方式
2020/06/24 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
从一次项目重构说起CSS3自定义变量在项目的使用方法
2021/03/01 HTML / CSS
html5的localstorage详解
2017/05/09 HTML / CSS
Html5页面获取微信公众号的openid的方法
2020/05/12 HTML / CSS
英国最大的在线时尚眼镜店:Eyewearbrands
2019/03/12 全球购物
美国时尚假发购物网站:Wigsbuy
2019/04/06 全球购物
毕业生机械建模求职信
2013/10/14 职场文书
小学见习报告
2014/10/31 职场文书
小学教师师德师风承诺书
2015/04/28 职场文书
反邪教警示教育活动总结
2015/05/09 职场文书
2016高考寄语集锦
2015/12/04 职场文书
用python批量解压带密码的压缩包
2021/05/31 Python
零基础学java之带返回值的方法的定义和调用
2022/04/10 Java/Android
Win10服务主机占用内存怎么办?Win10服务主机进程占用大量内存解决方法
2022/09/23 数码科技