`
flashdream8
  • 浏览: 678847 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

python 转换为json时候 汉字编码问题

 
阅读更多

有这样一个需求:

      需要一个json 文件 数据从数据库里查询出来

1. 设置文件头

     

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

  

 

2. 连接数据库 将数据库连接数据库的编码设置为utf8    

        db = MySQLdb.connect(host='数据库,user=用户名,passwd=密码,db='数据库, init_command="set names utf8" )

 

3.  查询出来的数据转化为json

   

 t = json.dumps(r, ensure_ascii=False)

 

     注意: ensure_ascii=False

        

           python 的api是这样解释的:

 

If ensure_ascii is False (default: True), then some chunks written to fp may be unicode instances, subject to normal Python str to unicode coercion rules. Unless fp.write() explicitly understands unicode (as in codecs.getwriter()) this is likely to cause an error.

 

PS : e文不好 就不再这里误导了。

      如果 不加 ensure_ascii=False  输出的 t 如果有汉字的话都默认给转换成一堆编码 如果加上的话 就都能正常显示变成了汉字

 

例如:

     不加的话: t = json.dumps(r)

          

[{"category": {"label": "\u65b0\u8f66"}, "title": "\u5168\u65b0\u8d77\u4e9a\u798f\u745e\u8fea\u8def\u8bd5\u8c0d\u7167\u66dd\u5149 \u6216\u4e3a\u5b9a\u540dK3", "url": "http://auto.sohu.com/20120523/n343878794.shtml", "source": "\u641c\u72d0\u6c7d\u8f66", "time": 1337740004, "imgUrl": ""}, {"category": {"label": "\u65b0\u8f66"}, "title": "\u65b0\u5965\u8feaQ7/Q8\u66f4\u591a\u4fe1\u606f\u66dd\u5149 \u5c06\u57fa\u4e8eMLB\u5e73\u53f0", "url": "http://auto.sohu.com/20120523/n343873150.shtml", "source": "\u641c\u72d0\u6c7d\u8f66", "time": 1337737913, "imgUrl": ""}]

 

     加上的话:  t = json.dumps(r, ensure_ascii=False)

    

[{"category": {"label": "新车"}, "title": "全新起亚福瑞迪路试谍照曝光 或为定名K3", "url": "http://auto.sohu.com/20120523/n343878794.shtml", "source": "汽车", "time": 1337740004, "imgUrl": ""}, {"category": {"label": "新车"}, "title": "新奥迪Q7/Q8更多信息曝光 将基于MLB平台", "url": "http://auto.sohu.com/20120523/n343873150.shtml", "source": "汽车", "time": 1337737913, "imgUrl": ""}]

 

分享到:
评论

相关推荐

    python中文编码与json中文输出问题详解.docx

    ### Python中文编码与JSON中文输出问题详解 #### 前言 在Python 2.x版本中,字符编码问题经常令人头痛。尽管网上的方法可以解决一些具体的错误,但对于其背后的原理,很多用户仍然感到困惑。本文旨在深入探讨Python...

    解决Python下json.loads()中文字符出错的问题

    在Python 2.7版本中,开发者使用`json.loads()`方法解析从网络请求中获取到的JSON格式数据时,可能会发现其中的中文字符被转换成了Unicode编码的形式。例如,原本的中文字符串"我爱你"会被转换为`u'\u4f60\u7231\u...

    python中文编码与json中文输出问题详解

    Python中的中文编码问题涉及到字符编码的历史、Python对字符串的处理方式以及JSON编码和解码的规则。在Python 2和3中,字符串分为两种类型:Unicode编码和将Unicode转化为特定编码,如UTF-8或GBK。 计算机最初是...

    python中的json总结

    当字典中包含非ASCII字符(如汉字)时,可以通过设置ensure_ascii参数为False来避免编码问题,解决乱码问题: ```python print(json.dumps(data, ensure_ascii=False)) ``` 输出将会是: ``` {"a":1,"b":2,"c":3} `...

    用Python从《诗经》中取平仄相对的名字所用的 数据文件

    《诗经》是中国古代文学的重要组成部分,包含了丰富的文化与历史信息。在当今社会,人们有时会从《诗经》中寻找灵感,为孩子或者项目取富有...此外,这个过程还可以作为学习Python编程、数据处理和汉字编码的实践案例。

    大汉字字典160000个汉字,几乎包含了常用的所有汉字。

    Python解析新华词典汉字程序.py很可能是一个Python脚本,用于读取word.json文件并进行汉字编码的转换或者解析汉字的其他相关信息。 最后,"汉字.txt"文件可能包含了字典中所有汉字的列表,这在进行汉字相关的统计...

    文字识别和图像特效Python大作业

    - OCR(Optical Character Recognition)是一种技术,能够将图像中的打印或手写文字转换为机器编码文本。在Python中,可以使用第三方库如`pytesseract`,或者如本例中使用的百度AI开放平台的API。 - 百度云提供了...

    Python精选库大全

    * simplejson:Python的JSON编码、解码器。 * unidecode:Unicode文本的ASCII转换形式。 * uniout:打印可读的字符,而不是转义的字符串。 * xpinyin:一个用于把汉字转换为拼音的库。 * yfiglet-figlet:pyfiglet -...

    unicode 转换工具 集合

    在IT领域,Unicode是一种标准化的字符编码方案,旨在表示世界上几乎所有的文字系统,包括汉字、拉丁字母、希腊字母等。这个“unicode转换工具集合”很可能包含了一系列用于处理和转换Unicode编码的实用程序,帮助...

    基于python实现地址和经纬度转换

    此外,如果遇到非标准的汉字编码问题,可能需要使用特定的编码方式,如`encode()`方法。 最后,使用这个函数时,务必替换`'你的AK'`为实际获取的百度API密钥,以确保请求的合法性。同时,需要注意百度地图API的使用...

    完整版编码转换大全.rar

    2. **数据迁移**:在更换操作系统或数据库系统时,可能需要将原有系统的编码转换为新系统的编码。 3. **网页显示**:网页内容可能来自不同编码的源,浏览器需要正确解析和显示。 4. **文件互换**:在不同编码格式...

    python常用的库大全

    11. **xpinyin**:将汉字转换为拼音的函数库,适用于中文文本处理或语音合成系统。 12. **pangu.py**:用于调整中文、日文和韩文中字母与数字间距的库,有助于改善文本的排版美观度。 13. **pyfiglet**:使用...

    Python 资源大全.docx

    simplejson处理JSON编码解码,unidecode将Unicode转换为ASCII,uniout打印可读的字符,slugify库用于生成SEO友好的slug,phonenumbers处理电话号码,PLY和pyparsing是解析工具,Pygments用于语法高亮,python-...

    Python常见第三方库

    11. xpinyin:用于将汉字转换为拼音,有助于处理中文文本。 12. pangu.py:调整中日韩文字间的字母和数字间距,改善视觉效果。 13. pyfiglet:生成ASCII艺术图片,常用于命令行界面的艺术字头。 14. uniout:提取...

    python 开发库介绍

    16. **python-slugify**: 类似功能,将Unicode转换为ASCII编码的slug。 17. **unicode-slugify**: 生成Unicode内码的slug,是Django框架的一个依赖。 18. **ply**: 提供类似lex和yacc的解析工具,用于编写词法分析...

    经典Python面试题之Python基础篇.docx

    Unicode是包含所有语言字符的标准,UTF-8是Unicode的一种变长编码方式,GBK是中国大陆常用的汉字编码。 字节码是源代码经过编译后的中间形式,而机器码是直接由CPU执行的二进制指令。 Python2和Python3的主要区别...

    常用Python爬虫库汇总.pdf

    untangle 是一个轻松实现将 XML 文件转换为 Python 对象的库;Bleach 是一个清理 HTML(需要 html5lib)的库。 四、文本处理 difflib 是一个帮助进行差异化比较的库;Levenshtein 是一个快速计算 Levenshtein 距离...

    汉字转为拼音网站源码

    4. 返回结果:服务器将转换后的拼音信息编码为JSON或其他格式,返回给前端。 5. 前端展示:前端接收到拼音信息后,将其显示在页面上,完成整个转换过程。 在实际应用中,汉字转为拼音技术有广泛的应用场景: 1. ...

    Python中还原JavaScript的escape函数编码后字符串的方法

    通常,这种编码方式将汉字或其他字符转换成一种“%uXXXX”形式的编码(其中“XXXX”为Unicode编码的十六进制形式)。而在Python中,我们需要找到一种方法将这种编码形式还原为原始的字符串形式。 从给出的部分内容...

Global site tag (gtag.js) - Google Analytics