• encode与decode,unicode与中文乱码的问题


    encode是指将unicode字符编码成其他字符集的字符,如utf-8,ascii等;

    而decode是指将其他字符编码,如utf-8转换成unicode编码。

    encode是指将人类用的语言(字符串)编码为机器能识别的语言(字节码),decode反之。

    【简单来说编码就是把人类通用的语言符号翻译成计算机通用的对象,而反向的翻译过程自然就是解码了。Python 中的字符串类型代表人类通用的语言符号,因此字符串类型有encode()方法;而字节类型代表计算机通用的对象(二进制数据),因此字节类型有decode()方法。】

    引自:http://python.jobbole.com/84840/

    其中还包含更多关于字符集的解释,和类似'ascii' codec can't encode character 'u96e8' in position 0..的错误解决方法

    python中可以用isinstance函数来判断某个字符串是否是unicode:

    s=u"中文"

    isinstance(s, unicode) #用来判断是否为unicode

    给出一段处理字符串编码的通用代码:

        if isinstance(s, unicode):
            s=s.encode('utf-8')
         #如果当前是unicode,就直接编码成utf-8 print 'encoded' else: s=s.decode('gb2312').encode('utf-8') #否则,已知当前是gb2312字符集,先将其解码成unicode,再按照utf-8编码 print 'decoded and encoded'

    引自http://www.blog.chinaunix.net/uid-25063573-id-3033365.html

  • 相关阅读:
    chrome 连接池超时值
    chrome 内部设置
    error: incomplete type 'blink::Event' named in nested name specifier note: forward declaration of 'blink::Event'
    js promise详解
    How Chromium Displays Web Pages
    调试chromium设置 How to enable logging
    禁止ultraedit域名
    chromium paint graphic
    Web IDL in Blink
    js的闭包
  • 原文地址:https://www.cnblogs.com/aaronhoo/p/5293159.html
Copyright © 2020-2023  润新知