zoukankan      html  css  js  c++  java
  • Python之print字典

    在python 下面一个包含中文字符串的列表(list)或字典,直接使用print会出现以下的结果:

    >>> adict={'a':'中文'} 
    >>> print adict
    {'a': 'xe4xb8xadxe6x96x87'}
    

      

    在输出处理好的数据结构的时候很不方便,需要使用以下方法进行输出:

    >>> print json.dumps(adict,encoding="UTF-8", ensure_ascii=False)
    {"a": "中文"}
    

      

    具体原因呢??

    对于第一种方式,python默认是使用ascii输出utf8字符

    >>> import sys
    >>> sys.getdefaultencoding()
    'ascii'
    

      

    那意思是不是将这个改成utf8,就可以显示呢?

    >>> reload(sys)
    <module 'sys' (built-in)>
    >>> sys.setdefaultencoding('utf8')
    >>> sys.getdefaultencoding()      
    'utf8'
    >>> 
    >>> aidct={'a':'中文'}
    >>> print adict       
    {'a': 'xe4xb8xadxe6x96x87'}
    

      

    依旧还是这样子!!!

    【参考资料】

    1、http://blog.163.com/typhoon_1986/blog/static/67887780201183044250416/

    2、http://stackoverflow.com/questions/18337407/saving-utf-8-texts-in-json-dumps-as-utf8-not-as-u-escape-sequence

  • 相关阅读:
    linux c++ 实现http请求
    pip 换源
    Web API接口
    DRF框架知识总览
    jq+bs插件
    element-ui插件
    axios插件
    前端存储数据汇总
    Vuex插件
    全局配置css和js
  • 原文地址:https://www.cnblogs.com/gsblog/p/4092530.html
Copyright © 2011-2022 走看看