Python常用的编码格式有3种:unicode,utf-8,gbk

有些时候因为某些需要,就例如我们用的是utf-8的编码格式编写的脚本,需要在Windows终端中运行,而Windows终端默认的编码格式是GBK,这时候我们就要把编码转换一下格式

我们先来看一下这3种编码格式的关系

由图中得知,unicode转换成GBK或者utf-8需要编码,而utf-8和GBK转换成unicode就要解码,那么,utf-8和GBK就可以通过这个方式来转换了

#!/usr/bin/env python#-*- coding:utf-8 -*-temp = "小明"  # utf-8# 解码,需要指定原来是什么编码(括号里面的)temp_unicode = temp.decode("utf-8")# 编码,需要制定编成什么编码(括号里面的)temp_gbk = temp_unicode.encode("gbk")print(temp_gbk)

以上是Python 2.几 的版本编码转换方法

在Python3里面,已经没有unicode类型,因为在Python3里面,unicode类型的编码它自动给你转换成utf-8或者gbk,所以utf-8可以直接编码成GBK

temp = "小明"temp_gbk = temp.encode("gbk")print(temp_gbk)