python读取json文件内容_pythonjson检测新内容

python读取json文件内容_pythonjson检测新内容教程前面章节曾介绍过JSON格式的数据,这种格式的数据通常会被转换为Python的list列表或dict字典。本节展示的是世界各国历年GDP总和,数据来源于https://datahub.io网站。数据格式如下:[{“CountryCode”:”ARB”,”CountryName”:”ArabWorld”,”Value”:25760683041.0857,”Y…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

教程前面章节曾介绍过 JSON 格式的数据,这种格式的数据通常会被转换为 Python 的 list 列表或 dict 字典。本节展示的是世界各国历年 GDP 总和,数据来源于 https://datahub.io 网站。数据格式如下:

[{“Country Code”:”ARB”,”Country Name”:”Arab World”,

“Value”:25760683041.0857,”Year”:1968},

{“Country Code:”ARB”, “country Name”:”Arab World”,

“Value”:28434203615.4829, “Year”:1969},

…

]

上面的 JSON 格式数据被保存在方括号内,这些数据将会被转换为 Python 的 list 列表,而 list 列表的每个元素将会是一个 dict 对象。

使用 Python 的 json 模块读取 JSON 数据非常简单,只要使用 load() 函数加载 JSON 数据即可。下面程序示范了读取 2016 年中国的 GDP 值:

python读取json文件内容_pythonjson检测新内容

上面程序中,第 6 行代码调用 json 模块的 load() 函数加载 JSON 数据,该函数将会返回一个 list 列表,接下来程序遍历该 list 列表即可访问到指定年份、指定国家的 GDP 值。

运行上面程序,可以看到如下输出结果:

China 11199145157649.2

在掌握了使用 json 模块读取这份 JSON 数据的方法之后,接下来我们将会从中读取从 2001 年到 2016 年中国、美国、日本、俄罗斯、加拿大这 5 个国家的 GDP 数据,并使用柱状图进行对比。

下面程序将会使用 Matplotlib 生成柱状图来展示这 5 个国家的 GDP 数据:

python读取json文件内容_pythonjson检测新内容

本程序的重点其实在于前半部分代码,这部分代码控制程序从 JSON 数据中只读取中国、美国、日本、俄罗斯、加拿大这 5 个国家的数据,且只读取从 2001 年到 2016 年的 GDP 数据,因此程序处理起来稍微有点麻烦(程序先以年份为 key 的 dict(如程序中 country_gdps 列表的元素所示)来保存各国的 GDP 数据。

但由于 Matplotlib 要求被展示数据是 list 列表,因此上面程序中的第 26、28 两行代码使用循环依次读取从 2001 年到 2016 年的 GDP 数据,并将这些数据添加到 country_gdp_list 列表的元素中。这样就把 dict 形式的 GDP 数据转换成 list 形式的 GDP 数据。

上面程序中的第 35、37 两行代码采用循环添加了 5 组柱状图,接下来程序还在中国、美国的条柱上绘制了 GDP 值。

运行上面程序,可以看到如图 1 所示的柱状图。

python读取json文件内容_pythonjson检测新内容

图 1 从 2001 年到 2016 年各国GDP 对比柱状图

如果通过 https://datahub.io 网站下载了世界各国人口数据,就可以计算出以上各国的人均 GDP。下面程序会使用 Pygal 来展示世界各国的人均 GDP 数据。

python读取json文件内容_pythonjson检测新内容

上面程序中,第 11 行代码加载了一份新的关于人口数据的 JSON 文件,这样程序即可通过该文件获取世界各国历史的人口数据。第 28 行代码使用 GDP 总值除以该国的人口数量,这样就可以得到该国的人均 GDP。

此程序的后半部分代码创建了 pygal.Bar 对象,并使用循环为该对象添加了各国人均 GDP 数据,这样该柱状图就可以展示各国的人均 GDP 值。

运行上面程序,可以看到如图 2 所示的柱状图。

python读取json文件内容_pythonjson检测新内容

图 2 从 2001 年到 2016 年各国人均 GDP 对比柱状图

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182717.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Cygwin的安装教程

    1、在官网上选择你想要的版本(www.cygwin.com)2、笔者选的是64位的3、如果网速快的话可以选择第一个选项4、选择路径5、选择你下载的地方6、这个一般都是选择直接连接的7、然后选择镜像的话推荐选择阿里的阿里云镜像http://mirrors.aliyun.com/cygwin/8、随后就是重头戏选择你要的组件包:必选(bison,flex,gcc-core,gcc-g++,make)9、在后面的skip双击就好会出现版本名10、开始下载11、最后

    2022年4月7日
  • 大数据挖掘技术在电网状态监测与诊断中的应用

    大数据挖掘技术在电网状态监测与诊断中的应用

    2021年11月22日
  • 强大的nginx反向代理异步传输模式(原理)[通俗易懂]

    强大的nginx反向代理异步传输模式(原理)[通俗易懂]sudone.com在nginx的反向代理介绍中,提到了异步传输模式并提到它可以减少后端连接数和压力,这是为何?下面就来讲解下传统的代理(apache/squid)的同步传输和nginx的异步传输的差异。看图:         squid同步传输:浏览器发起请求,而后请求会立刻被转到后台,于是在浏览器和后台之间就建立了一个通道。在请求发起直到请求完成,这条通道都是一直存在的。nginx异步传输:浏…

    2022年9月14日
  • 数组 函数_从零开始的基础篇

    数组 函数_从零开始的基础篇一、数组操作的基本函数数组的键名和值array_values($arr);获得数组的值array_keys($arr);获得数组的键名array_flip($arr);数组中的值与键名互换(如

    2022年8月5日
  • Java安全之安全加密算法

    Java安全之安全加密算法

    2020年11月20日
  • Linux下export命令和source命令与环境变量设置「建议收藏」

    Linux下export命令和source命令与环境变量设置「建议收藏」Linux下export命令和source命令与环境变量设置环境变量广泛用于程序运行环境的设置。从Linuxshell的角度来看,环境变量无非就是shell脚本的变量而已。从这个角度理解环境变量,就能理解设置环境变量的那些命令究竟在做什么。说明:笔者的系统为debian,shell为bash,以下例子均在笔者的Linux环境下测试,不保证其他环境能够通过。export命令和source命令…

    2022年9月6日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号