Py学习  »  Python

python读写json文件

生信修炼手册 • 5 年前 • 534 次点击  
欢迎关注”生信修炼手册”!
json是互联网文本传输的标准格式之一,本质是字典和列表的组合, 内容示意如下
{    "summary": {        "before_filtering": {            "total_reads":48153902,            "total_bases":7223085300,            "q20_bases":7065592756,            "q30_bases":6780360345,            "q20_rate":0.978196,            "q30_rate":0.938707,            "read1_mean_length":150,            "read2_mean_length":150,            "gc_content":0.466978        },        "after_filtering": {            "total_reads":47888586,            "total_bases":7160081698,            "q20_bases":7020377651,            "q30_bases":6741810096,            "q20_rate":0.980488,            "q30_rate":0.941583,            "read1_mean_length":149,            "read2_mean_length":149,            "gc_content":0.46685        }    } }

上述文件截取自fastp软件产生的json输出结果,最外围是一个字典,而字典的值既可以是基本的数据类型,比如数值,字符串,又可以是列表,字典等数据结构,相互嵌套,就构成了整个json文件。

对于json文件的读写,也称之为json的编码和解码。所谓解码,就是将文字格式的json转换为编程语言中的对象,编码则相反,将编程语言中的对象转换为json格式的字符串。

在python3中,可以通过内置模块json来读写json格式的文件,解码对应load函数,编码对应dump函数,用法如下

1. 读取json文件
>>> with open('fastp.json') as f:...     a = json.load(f)...>>>>>>>>> type(a)<class 'dict'>

解码之后,用字典来存储json的内容,要访问其中的值,采用字典的key来访问即可,用法如下

>>> a['summary']['before_filtering']['read1_mean_length']150
2. 写入json文件
>>> with open('out.json', 'w') as f:...     json.dump(a, f)...
采用python来读写json文件,真的可以说是非常简单了,两行代码即可搞定。

·end·

—如果喜欢,快分享给你的朋友们吧—



原创不易,欢迎收藏,点赞,转发!生信知识浩瀚如海,在生信学习的道路上,让我们一起并肩作战!
本公众号深耕耘生信领域多年,具有丰富的数据分析经验,致力于提供真正有价值的数据分析服务,擅长个性化分析,欢迎有需要的老师和同学前来咨询。
  更多精彩



  写在最后


转发本文至朋友圈,后台私信截图即可加入生信交流群,和小伙伴一起学习交流。


扫描下方二维码,关注我们,解锁更多精彩内容!


一个只分享干货的

生信公众号



Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/62927
 
534 次点击