zoukankan      html  css  js  c++  java
  • python之json文件解析

    python之json文件解析

    文件json片段:

    {"Registration":[{"accessibleNodes":[], 
    "name":"wenling025","panotype":"faroscene","index":0,"deltastart":0,"deltaend":2.63894,"position":[18.7219, 37.4723,
    78.3677],"compassdirection": -167.823790349,"gps": "65,12114.5,2828.4","time": "17.6.2020 8:28:26:826","angle":
    -1.20249,"eulerangle":[-0.00517583, -0.00700516,
    -1.20249],"quaternion":{"w":0.824629,"x":-0.000152764,"y":-0.00435222,"z":-0.565657}},{"accessibleNodes":[],
    "name":"wenling026","panotype":"faroscene","index":1,"deltastart":0,"deltaend":2.63894,"position":[10.1405, 25.5701,
    76.5737],"compassdirection": -36.639810333,"gps": "65,12114.5,2828.4","time": "17.6.2020 8:35:39:84","angle":
    2.42307,"eulerangle":[0.014962, -0.00228156,
    2.42307],"quaternion":{"w":0.351579,"x":0.00156224,"y":-0.00740439,"z":0.936128}},{"accessibleNodes":[],
    "name":"wenling027","panotype":"faroscene","index":2,"deltastart":0,"deltaend":2.63894,"position":[2.21181, 29.4989,
    74.2136],"compassdirection": 24.975850619,"gps": "65,12114.5,2828.4","time": "17.6.2020 8:42:56:759","angle":
    1.24201,"eulerangle":[0.0163222, 0.013833,
    1.24201],"quaternion":{"w":0.813216,"x":0.0106614,"y":0.000876532,"z":0.581864}}

    python:

    Python3 中可以使用 json 模块来对 JSON 数据进行编解码,它包含了两个函数:

    • json.dumps(): 对数据进行编码。
    • json.loads(): 对数据进行解码。
    • 如果你要处理的是文件而不是字符串,你可以使用 json.dump()json.load() 来编码和解码JSON数据。

    代码:

     1 #!/usr/bin/python3
     2 # -*- coding: UTF-8 -*-
     3 
     4 # noinspection PyUnresolvedReferences
     5 import io
     6 # noinspection PyUnresolvedReferences
     7 from io import BytesIO
     8 # noinspection PyUnresolvedReferences
     9 import binascii
    10 # noinspection PyUnresolvedReferences
    11 import json
    12 # noinspection PyUnresolvedReferences
    13 import numpy
    14 
    15 if __name__ == '__main__':
    16     # print("hello word ... ")
    17     # 读取json文件内容,返回字典格式
    18     with open('./panorama.json','r',encoding='utf8')as fp:
    19         json_data = json.load(fp)
    20 
    21     outfile = open("./panorama.txt", "r+")
    22     #print("json_data['Registration']:",json_data['Registration'])
    23     list_data = json_data['Registration']
    24     for list_value in list_data:
    25         outfile.write(list_value['name'])
    26         outfile.write('
    ')
    27         for x in list_value['position']:
    28             outfile.write(str(x))
    29             outfile.write(' ')
    30         outfile.write('
    ')
    31 
    32         for x in list_value['eulerangle']:
    33             outfile.write(str(x))
    34             outfile.write(' ')
    35         outfile.write('0.0')
    36         outfile.write('
    ')
    37         #print("position :",list_value['position'])
    38         #print("eulerangle:",list_value['eulerangle'])
    39     fp.close()
    40     outfile.close()

    参考:

    https://www.runoob.com/python3/python3-json.html

    https://www.cnblogs.com/bigberg/p/6430095.html

    https://www.cnblogs.com/XhyTechnologyShare/p/12033690.html

  • 相关阅读:
    高斯消元模板(通用+异或)
    矩阵快速幂模板
    hdu 6185 递推+矩阵快速幂
    欧几里得小结
    乘法逆元模板
    vijo 1456最小总代价
    MariaDB数据库
    docker基本命令
    std::tuple
    boost::asio
  • 原文地址:https://www.cnblogs.com/lovebay/p/13048395.html
Copyright © 2011-2022 走看看