编码问题

首先先介绍下 python 的几种编码方法及函数
1. encode(coding):以 coding 方式将 unicode 字符串编码
2. decode(coding):以 coding 方式将字符串解码成 unicode 字符
3. 文件开头声明 # -*- coding:utf8 -*- 表示全文的未加 ‘u’ 开头的汉字编码为 utf8
4. 文件中的汉字以 ‘u’ 开头,表示该汉字为 unicode 编码

python 字符转码,说白了就是将以 unicode 作为中间桥梁来进行转换
例如:
# -*- coding:utf8 -*-
str = '你好' # utf8
str1 = u'你好' # unicode

# 将 utf8 转为 gbk
str.decode('utf8').encode('gbk') # 先用 utf8 将 str 解码为 unicode,再将解码后的 str 以 gbk 进行编码
str1.encode('gbk') # 由于 str1 就是 unicode,所以直接以 gbk 进行编码

就算是从文件中读取的数据也是这样,先了解文件的编码是什么,再转成 unicode,然后再编码。
over。

原文地址:https://www.cnblogs.com/smghome/p/9528682.html