免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 4415 | 回复: 5
打印 上一主题 下一主题

json嵌套的输出 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-02-02 13:04 |只看该作者 |倒序浏览
有如下json.txt
  1. {
  2.         "name": "Google",
  3.         "location":
  4.                 {
  5.                         "street": "1600 Amphitheatre Parkway",
  6.                         "city": "Mountain View",
  7.                         "state": "California",
  8.                         "country": "US"
  9.                 },
  10.         "employees":
  11.                 [
  12.                         {
  13.                                 "name": "Michael",
  14.                                 "division": "Engineering"
  15.                         },
  16.                         {
  17.                                 "name": "Laura",
  18.                                 "division": "HR"
  19.                         },
  20.                         {
  21.                                 "name": "Elise",
  22.                                 "division": "Marketing"
  23.                         }
  24.                 ]
  25. }
复制代码
请教,如何输出emplyees中的name和divison?
如果对于更多层的这种嵌套呢?

论坛徽章:
5
巨蟹座
日期:2014-08-28 18:12:342015年迎新春徽章
日期:2015-03-04 10:01:4415-16赛季CBA联赛之江苏
日期:2016-04-28 09:43:3115-16赛季CBA联赛之吉林
日期:2016-06-22 10:34:4315-16赛季CBA联赛之山西
日期:2016-08-16 16:29:55
2 [报告]
发表于 2016-02-02 14:07 |只看该作者
一层一层挖 哈哈

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-08-24 06:20:00综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00IT运维版块每日发帖之星
日期:2015-10-25 06:20:00IT运维版块每日发帖之星
日期:2015-11-06 06:20:00IT运维版块每日发帖之星
日期:2015-12-10 06:20:00平安夜徽章
日期:2015-12-26 00:06:302016猴年福章徽章
日期:2016-02-18 15:30:34IT运维版块每日发帖之星
日期:2016-04-15 06:20:00IT运维版块每日发帖之星
日期:2016-05-21 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-14 06:20:00
3 [报告]
发表于 2016-07-14 12:36 |只看该作者
搞json的不知道jq这个工具吗,
  1. echo '{
  2.         "name": "Google",
  3.         "location":
  4.                 {
  5.                         "street": "1600 Amphitheatre Parkway",
  6.                         "city": "Mountain View",
  7.                         "state": "California",
  8.                         "country": "US"
  9.                 },
  10.         "employees":
  11.                 [
  12.                         {
  13.                                 "name": "Michael",
  14.                                 "division": "Engineering"
  15.                         },
  16.                         {
  17.                                 "name": "Laura",
  18.                                 "division": "HR"
  19.                         },
  20.                         {
  21.                                 "name": "Elise",
  22.                                 "division": "Marketing"
  23.                         }
  24.                 ]
  25. }'| jq '.employees[]|.name,.division'| sed 'N;s/\n/   /'
  26. "Michael"   "Engineering"
  27. "Laura"   "HR"
  28. "Elise"   "Marketing"
复制代码

论坛徽章:
16
IT运维版块每日发帖之星
日期:2015-08-24 06:20:00综合交流区版块每日发帖之星
日期:2015-10-14 06:20:00IT运维版块每日发帖之星
日期:2015-10-25 06:20:00IT运维版块每日发帖之星
日期:2015-11-06 06:20:00IT运维版块每日发帖之星
日期:2015-12-10 06:20:00平安夜徽章
日期:2015-12-26 00:06:302016猴年福章徽章
日期:2016-02-18 15:30:34IT运维版块每日发帖之星
日期:2016-04-15 06:20:00IT运维版块每日发帖之星
日期:2016-05-21 06:20:00综合交流区版块每日发帖之星
日期:2016-08-16 06:20:002015七夕节徽章
日期:2015-08-21 11:06:17IT运维版块每日发帖之星
日期:2015-08-14 06:20:00
4 [报告]
发表于 2016-07-14 13:03 |只看该作者
看了下还有个+
  1. echo '{
  2.         "name": "Google",
  3.         "location":
  4.                 {
  5.                         "street": "1600 Amphitheatre Parkway",
  6.                         "city": "Mountain View",
  7.                         "state": "California",
  8.                         "country": "US"
  9.                 },
  10.         "employees":
  11.                 [
  12.                         {
  13.                                 "name": "Michael",
  14.                                 "division": "Engineering"
  15.                         },
  16.                         {
  17.                                 "name": "Laura",
  18.                                 "division": "HR"
  19.                         },
  20.                         {
  21.                                 "name": "Elise",
  22.                                 "division": "Marketing"
  23.                         }
  24.                 ]
  25. }'| jq -r '.employees[]|.name + "  " + .division'
  26. Michael  Engineering
  27. Laura  HR
  28. Elise  Marketing
复制代码

论坛徽章:
0
5 [报告]
发表于 2016-07-14 22:39 |只看该作者
本帖最后由 pyartist 于 2016-07-14 22:40 编辑
  1. import json
  2. a = json.dump("""xxxxxx""")
  3. b = json.loads(a)
  4. print (b[emplyees][name])
  5. print (b[emplyees][division])
复制代码

论坛徽章:
4
白羊座
日期:2013-11-05 10:26:09冥斗士
日期:2015-11-17 14:19:55白银圣斗士
日期:2015-11-17 15:13:0815-16赛季CBA联赛之新疆
日期:2016-04-01 09:10:58
6 [报告]
发表于 2016-07-15 11:59 |只看该作者
本帖最后由 icymirror 于 2016-07-15 12:00 编辑

回复 1# jiakon
  1. import json
  2. content = json.load(open("json.txt", "r"))
  3. for record in content["employees"]:
  4.     print(record["name"])
  5.     print(record["division"])
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP