Python解码和编码

decode是解码,encode时编码

在Python2中默认时ASCLL,在Python3中默认时Unicode

gbk转向utf-8:先将gbk解码成Unicode,在编码成utf-8。

utf-8转向gbk:先将utf-8解码成Unicode,在编码成gbk。

Python2代码:

 1 #-*- coding:utf-8 -*-
 2
 3 ‘‘‘
 4 @auther: Starry
 5 @file: py2ende.py
 6 @time: 18-1-12 下午9:52
 7 ‘‘‘
 8
 9 ‘‘‘
10 Python2中默认是ASCII
11 ‘‘‘
12 import sys
13
14 print(sys.getdefaultencoding())
15
16 s = ‘你好‘
17
18 s_unicode = s.decode(‘utf-8‘)
19 s_gbk = s_unicode.encode(‘gbk‘)
20
21 print(s_unicode)
22 print(s_gbk)
23
24 gbk_to_utf8 = s_gbk.decode(‘gbk‘).encode(‘utf-8‘)
25 print(gbk_to_utf8)

Python3代码:

 1 #!/usr/bin python3.5
 2 #-*- coding:utf-8 -*-
 3
 4 ‘‘‘
 5 @auther: Starry
 6 @file: py3ende.py
 7 @time: 18-1-12 下午9:56
 8 ‘‘‘
 9
10 ‘‘‘
11 Python3中默认时Unicode
12 ‘‘‘
13
14 import sys
15 print(sys.getdefaultencoding())
16
17
18 s = ‘你好‘
19 print(s)
20
21
22 s_utf8 = s.encode(‘utf-8‘)
23 s_gbk = s.encode(‘gbk‘)
24
25 print(s_utf8)
26 print(s_gbk)
27
28 gbk_unicode = s_gbk.decode(‘gbk‘)
29 print(gbk_unicode)
30
31 utf8_to_gbk = s_utf8.decode(‘utf-8‘).encode(‘gbk‘)
32 gbk_to_utf8 = s_gbk.decode(‘gbk‘).encode(‘utf-8‘)
33
34 print(utf8_to_gbk)
35 print(gbk_to_utf8)

原文地址:https://www.cnblogs.com/xingkongyihao/p/8277890.html

时间: 2024-10-12 03:32:11

Python解码和编码的相关文章

python中的编码与解码

编码与解码 首先,明确一点,计算机中存储的信息都是二进制的 编码/解码本质上是一种映射(对应关系),比如‘a’用ascii编码则是65,计算机中存储的就是00110101,但是显示的时候不能显示00110101,还是要显示'a',但计算机怎么知道00110101是'a'呢,这就需要解码,当选择用ascii解码时,当计算机读到00110101时就到对应的ascii表里一查发现是'a',就显示为'a' 编码:真实字符与二进制串的对应关系,真实字符→二进制串 解码:二进制串与真实字符的对应关系,二进制

Python解码编码问题

一.先说说编解码问题 编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码. Eg: 1 2 str1.decode('gb2312')    #将gb2312编码的字符串转换成unicode编码 str2.encode('gb2312')    #将unicode编码的字符串转换成gb2312编码 python2.7 idle GUI界面打印中文会出现乱码,这是idle本身问题:   c

Python文件写入编码问题

今天,用Python写文件,发现中国人真不容易,任何编程问题都需要比老外多学一套应对编码的方法.JSP写完了吗?中文编码问题考虑一下:servlet中的url,转发的文本,都有可能与什么gb2312,isoxxxx,utf-8,unicode,ascii扯上关系.以至于,我们每每遇到运行异常,都会"一朝被蛇咬十年怕井绳"般思考"是不是又是编码导致的". 在python里,编码问题依然是个恶心的问题.之前在VS for Python的IDE环境下,已经饱尝中文编码之苦

python基础之编码问题

python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和utf-32等)演变过来的,再加上类似于中国的gbk编码等,这些编码互相之间并不兼容,所以编写的软件实现跨语言平台运行就会出现字符乱码问题... 须知内容如下: 在python2默认编码是ASCII, python3里默认是utf-8(文件编码默认是utf-8,字符串编码默认是unicode) unicode

浅谈Python中的编码规则

注:本人用Python3.4作为学习版本,以下学习心得只适用于Python3.4. 之前拜读了金角大王Alex关于编码的解答,收获颇多.特此致谢,以下仅谈一谈作为一个初学者,对编码的理解. 我所了解的编码,大致分为两类:第一类是支持中文的编码集:第二类是支持英文的编码集.至于别国的编码集,暂且不做讨论. 常见编码:ASCII:Unicode:UTF-8:big5,:GB2312:GBK:GB18030 接下来,我对以上编码进行分类: 只支持英文和特殊字符的编码:ASCII ASCII是基于拉丁字

python蛋疼的编码decode、encode、unicode、str、byte的问题都在这了

相信很多人和我一样,被python蛋疼的编码问题纠缠不清,比如下面的 私以为出现这种错误的原因还是对一些基本的编解码概念不够熟悉,下面就说说我的理解: 首先python刚出来的时候unicode还没有一统江湖,期间很多代码和程序压根就是直接用ascii编码,反正代码都是英文写的,而且当时那个年代写代码一般都是说英文的,那就无所谓啦,人家用的爽才不care那么多,后来互联网开始兴起,全球各个地方的人都需要了,中国这边的话自己搞了套gbk(gb2312)编码,同时该编码包含了ascii,毕竟asci

python中的编码问题:以ascii和unicode为主线

  1.unicode.gbk.gb2312.utf-8的关系 http://www.pythonclub.org/python-basic/encode-detail 这篇文章写的比较好,utf-8是unicode的一种实现方式,unicode.gbk.gb2312是编码字符集: 2.python中的中文编码问题 2.1 .py文件中的编码 Python 默认脚本文件都是 ANSCII 编码的,当文件 中有非 ANSCII 编码范围内的字符的时候就要使用"编码指示"来修正. 一个mo

用python查看URL编码的中文

什么是URL编码呢,请看https://zh.wikipedia.org/wiki/Urlencode. 有时,我们向一些网站提交中文参数时,中文是会被编码成这种格式的 "%B1%E0%C2%EB ",它的原文是"编 码",URL编码也被称为"百分号编码",是不是有很多百分号.我们常使用的"空格"的URL编码就是 "%20",但是新的 标准把"空格" 替换为 "+",

Python常见字符编码间的转换

学习Python,字符编码间的转换是绕不过去的一只拦路虎,不把编码彻底搞明白,总有一天它会猝不及防坑你一把. Python2.x和Python3.x在字符编码的设置上也有很大区别(Python3未来将是主流,所以Python3为主),今天我们就来一起学习下. 上一篇文章里我已经简述了Python的常见编码了,这里就不再赘述了,还不清楚的小伙伴可以先去看下:     http://www.cnblogs.com/schut/p/8406897.html 一.Unicode 和 UTF-8的纠葛 U