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检测主机存活端口及检查存活主机
Oct 12 Python
Python实现各种排序算法的代码示例总结
Dec 11 Python
Python3.X 线程中信号量的使用方法示例
Jul 24 Python
python实现壁纸批量下载代码实例
Jan 25 Python
Python OpenCV获取视频的方法
Feb 28 Python
详解python:time模块用法
Mar 25 Python
详解Python 切片语法
Jun 10 Python
Python3的高阶函数map,reduce,filter的示例详解
Jul 23 Python
Python 离线工作环境搭建的方法步骤
Jul 29 Python
wxPython实现文本框基础组件
Nov 18 Python
Python调用.net动态库实现过程解析
Jun 05 Python
Python中zipfile压缩包模块的使用
May 14 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
DC《小丑》11项提名领跑奥斯卡 Netflix成第92届奥斯卡提名最大赢家
2020/04/09 欧美动漫
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
2016/01/12 PHP
PHP用swoole+websocket和redis实现web一对一聊天
2019/11/05 PHP
php7 新增功能实例总结
2020/05/25 PHP
javascript 事件查询综合 推荐收藏
2010/03/10 Javascript
javascript多种数据类型表格排序代码分析
2010/09/11 Javascript
js正文内容高亮效果的实现方法
2013/06/30 Javascript
JavaScript fontcolor方法入门实例(按照指定的颜色来显示字符串)
2014/10/17 Javascript
浅谈javascript面向对象程序设计
2015/01/21 Javascript
使用jspdf生成pdf报表
2015/07/03 Javascript
jquery选择器简述
2015/08/31 Javascript
基于jquery实现左右按钮点击的图片切换效果
2021/01/27 Javascript
Webpack实现按需打包Lodash的几种方法详解
2017/05/08 Javascript
Javascript创建类和对象详解
2017/05/31 Javascript
vue2利用Bus.js如何实现非父子组件通信详解
2017/08/25 Javascript
浅谈es6中export和export default的作用及区别
2018/02/07 Javascript
JavaScript面向对象继承原理与实现方法分析
2018/08/09 Javascript
Vue中UI组件库之Vuex与虚拟服务器初识
2019/05/07 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
Vue分页效果与购物车功能
2019/12/13 Javascript
支付宝小程序实现省市区三级联动
2020/06/21 Javascript
详解python3中tkinter知识点
2018/06/21 Python
墨西哥购物网站:Elektra
2020/01/21 全球购物
美国滑板店:Tactics
2020/11/08 全球购物
Cynthia Rowley官网:全球领先的生活方式品牌
2020/10/27 全球购物
临床护士自荐信
2014/01/31 职场文书
委托公证书
2014/04/08 职场文书
应急管理培训方案
2014/06/12 职场文书
应用外语系自荐信
2014/06/26 职场文书
导游词之天津古文化街
2019/11/09 职场文书
JavaScript实现登录窗体
2021/06/22 Javascript
一篇文章带你了解Python和Java的正则表达式对比
2021/09/15 Python
分析Python list操作为什么会错误
2021/11/17 Python
Python中三种花式打印的示例详解
2022/03/19 Python
《金肉人》米特&《航海王》阿鹤声优松岛实因胰脏癌去世 享寿81岁
2022/04/13 日漫
VW、VH适配移动端的解决方案与常见问题
2023/05/21 HTML / CSS