# coding: utf-8 import json # json.load(json文件操作句柄) # json.loads(json字符串) # json.dump(写入文件句柄) # json.dumps(python对象) # ## 读取json文件 file_name = 'json.txt' try: with open(file_name,'r') as json_file_handler: # json_file_handler就是一个json文件的操作句柄 obj = json.load(json_file_handler) print type(obj) print obj except Exception,e: print e with open(file_name,'r') as f: content = f.read() obj = json.loads(content) print obj # ## 写入json文件 file_name = 'user.json' a1 = dict() a1['姓名'] = '张三' a1['年龄'] = 20 a1['爱好'] = ['篮球','足球','羽毛球'] a2 = dict() a2['姓名'] = '李四' a2['年龄'] = 30 a2['爱好'] = ['乒乓球','羽毛球'] info = dict() info['用户信息'] = [a1,a2] info['用户个数'] = 2 #数据中包含中文,需设置ensure_ascii json_srt = json.dumps(info,ensure_ascii=False) with open(file_name,'w') as f: f.write(json_srt) file_name = 'user2.json' a1 = dict() a1['姓名'] = '张三' a1['年龄'] = 20 a1['爱好'] = ['篮球','足球','羽毛球'] a2 = dict() a2['姓名'] = '李四' a2['年龄'] = 30 a2['爱好'] = ['乒乓球','羽毛球'] info = dict() info['用户信息'] = [a1,a2] info['用户个数'] = 2 with open(file_name,'w') as f: # 参数:1>写入的数据 2>文件的操作句柄 3>禁用ascii编码 json.dump(info,f,ensure_ascii=False) # ## json转csv import pandas as pd with open('1.json','r') as json_file_handler: json_data = json.load(json_file_handler) k_list = json_data.keys() v_list = json_data.values() print k_list print v_list # 根据list构造Pandas中的Series对象 k_ser = pd.Series(k_list,name='year') v_ser = pd.Series(v_list,name='mean_tem') print k_ser print v_ser res = pd.concat([k_ser,v_ser],axis=1) print res # 保存csv文件
#index=None不添加列索引 res.to_csv('json_to_csv.csv',encoding='utf-8',index=None)