Python 里面的编码和解码也就是 unicode 和 str 这两种形式的相互转化。编码是 unicode -> str,相反的,解码就是 str -> unicode 。 decode的作用是将其他编码的字符串转换成unicode编码,如: 因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码. 代码中字符串的默认编码与代码文件本身的编码一致。如果是在utf8的文件中,该字符串就是utf8编码,如果是在gb2312的文件中,则其编码为gb2312 获取系统编码: sys.getdefaultencoding()如:在命令行中, sys.getdefualtencoding()结果为ascii。 则一个从系统磁盘读取的含中文的文件名字符串name的编码也为ascii,此时要想打印出正确的name,需要做: 当使用sys来设置编码方式时: import sys 获取一个字符串编码的方式: import chardet encoding = chardet.detect(fullPath) |
|