python中json到dict转换
来源:互联网 发布:stc89c52rc数据手册 编辑:程序博客网 时间:2024/05/22 05:05
1、基本是利用python自带json库进行转换
转自 http://www.hulufei.com/post/201004161735
(实际上JSON就是Python字典的字符串表示,但是字典作为一个复杂对象是无法直接转换成定义它的代码的字符串,Python有一个叫simplejson的库可以方便的完成JSON的生成和解析,这个包已经包含在Python2.6中,就叫json 主要包含四个方法: dump和dumps(从Python生成JSON),load和loads(解析JSON成Python的数据类型)dump和dumps的唯一区别是dump会生成一个类文件对象,dumps会生成字符串,同理load和loads分别解析类文件对象和字符串格式的JSON)
2、遇到汉字问题
转自:http://www.cnblogs.com/china-ldw/p/3387800.html
python中包含UTF-8编码中文的列表或字典的输出
在python 下面一个包含中文字符串的列表(list)或字典,直接使用print会出现以下的结果:
>>> dict = {"asdf": "我们的python学习"}
>>> print dict
{'asdf': '\xe6\x88\x91\xe4\xbb\xac\xe7\x9a\x84python\xe5\xad\xa6\xe4\xb9\xa0'}
在输出处理好的数据结构的时候很不方便,需要使用以下方法进行输出:
>>> import json
>>> print json.dumps(dict, encoding="UTF-8", ensure_ascii=False)
{"asdf": "我们的python学习"}
注意上面的两个参数
如果是字符串,直接输出或者
print str.encode("UTF-8")
print 的重定向:
fin = open("xx.txt", 'r');
print >>fin, "hello world", 12;
fin.close();
但是,要将print的内容重定向到文件中,会报UnicodeEncodeError: 'ascii' codec can't encode characters in position 48-51这个错。
在import sys后加上下面两句就OK了。
reload(sys)
sys.setdefaultencoding('utf8')
3、我自己的处理
经验来自于探索,直接贴代码
从json文件到json字符串,方便输入json测试
json_str =""try: with open('fetch.json', 'r') as f: data = json.load(f, "utf-8") g_Log.debug("menu dict %s", data) #print "--------",data["menu"]["button"][0]["name"].encode("utf-8") print "--------",data #json_str = json.dumps(data, encoding="UTF-8", ensure_ascii=False) json_str = json.dumps(data, encoding="UTF-8", ensure_ascii=False) g_Log.debug("menu json %s", data) print "jsonstr ",json_strexcept : g_Log.error("Open json file menu.json error ") return -1, ""
post数据输出时,还需要encode,不然对面解析错误,原因后续探索
self.m_menu_body = json_str.encode("utf-8")
【注】:用于总结,不好的地方请担待
0 0
- python中json到dict转换
- python dict与json转换
- python 中Dict 转 Json
- python中将json字符串转换为dict
- python中list,str,json,dict使用
- Python中类与dict的转换
- json dict python base64
- python json 转 dict , list
- python dict json读写文件
- 在Python标准库的json包中,提供了JSONEncoder和JSONDecoder两个类来实现Json字符串和dict类型数据的互相转换。
- 在Python标准库的json包中,提供了JSONEncoder和JSONDecoder两个类来实现Json字符串和dict类型数据的互相转换。
- python中 class 或对象属性转化成dict 、dict转换成对象
- python中 class 或对象属性转化成dict 、dict转换成对象
- Python中dict详解
- Python中dict详解
- Python中dict 字典
- Python中dict详解
- Python中dict详解
- How to Delete From or Add Resource to OCR in Oracle Clusterware (文档 ID 1069369.1)
- Servlet中的过滤器Filter详解
- sql 函数记录
- Combinations
- hdu 1237 简单计算器(数组模拟栈,队列)
- python中json到dict转换
- 【学习总结】总结一些书籍、Blog、网站等资料汇总
- mysql prepareStatement executeQuery() 内存溢出的解决办法
- 输出9*9口诀。共9行9列,i控制行,j控制列。
- iOS中设置导航栏的背景颜色和标题字体以及颜色,以及tabBarItem的图片和字体颜色的设置
- PHP基本数据类型
- poi导出中文名出现乱码或者不出现的的情况
- 投影曲线的波峰查找
- 该入门教程的流程是这样的