python 处理json文件

# -*- coding: utf-8 -*-   


"""处理json
Usage:
netCheck <JSONFILE> <SAVEFILE>
"""

from docopt import docopt
import json


def deal_json(JSONFILE, SAVEFILE):
    with open(JSONFILE, 'r', encoding = 'utf-8') as f_read:
        data = json.load(f_read)
        #如果用f_read.read()读取就需要使用json.loads()方法,将json转换成python字典
        data_list = data['data']['contact_list']['list']
        #对于字典可直接使用['']来获取值
        #对于字典中包含list的,需要获取其长度,分别取出list值后,再使用['']获取属性

        for j in range(len(data_list)):
            #data_json = json.loads()
            #print(data_list[j]['depart_ids'])
            if '1688851312330172' in data_list[j]['depart_ids']:
                with open(SAVEFILE, 'a', encoding = 'utf-8') as f_write:
                    f_write.write(data_list[j]['name']+ '\n')
                    #添加上\n是为自动换行
if __name__ == '__main__':
    # 将绑定交互参数
    arguments = docopt(__doc__)
    JSONFILE = arguments['<JSONFILE>']
    SAVEFILE = arguments['<SAVEFILE>']
    deal_json(JSONFILE, SAVEFILE)

猜你喜欢

转载自blog.csdn.net/u012700515/article/details/82116326