Python的编码和解码
Python的编码和解码
在不同的国家,存在不同的文字,由于现在的软件都要做到国际化通用,所以必须要有一种语言或编码方式,来实现各种编码的解码,然后重新编码。
在西方国家,没有汉字,只有英文,所以最开始使用的是ASCII编码,只有96个元素,所以用8位(1字节)就能完全表示,但是无法解析中文。
中国有汉字,所以在计算机的发展史上,出现了GB2312、GB18032、GBK等多种编码方式,在汉字上以2个字节存放。
为了能够实现通用,出现了一种标准的编码方式,unicode编码,在unicode编码中,所有的字符/汉字的表示,都用2个或2个以上的字节,比如英文字符,就是2个字节,汉字是2个或4个字节。对于西方国家来说,以前1个字节能够表示的,现在需要2个字节,所占用的空间翻倍了。所以这个时候就出现了unicode的扩展集,utf-8。
Utf-8在表示英文字符上,还是保留1个字节的表示方法,在表示汉字上,使用3个字节来表示。
由于unicode才是所有国家通用的计算机编码方式,所以在不同的编码之间的转换,必须是要先经过unicode,才能再进行编码成其他的编码,比如uft-8、GBK等。
Utf-8/gbk----------------------decode-----------------àunicode
Unicode------------------------encode----------------àutf-8/gbk
在python中使用的默认编码是unicode,所以在python中创建的任何对象,默认的编码方式都是unicode,不能再进行decode,只能进行encode操作。而在文件头部声明的编码方式,只是为了表明,这个文件的编码方式是哪一种,在不同的解释器上运行,编码方式是跟解释器有关。
Python的编码和解码的更多相关文章
- 【转】python 字符编码与解码——unicode、str和中文:UnicodeDecodeError: 'ascii' codec can't decode
原文网址:http://blog.csdn.net/trochiluses/article/details/16825269 摘要:在进行python脚本的编写时,如果我们用python来处理网页数据 ...
- python base64编码和解码图片
简介 在实际项目中,可能需要对图片进行大小的压缩,较为常见的方法则是将图片转换为base64的编码,本文就python编码和解码图片做出一定的介绍. 代码 import base64 import o ...
- python之编码与解码、is 与==的区别
一.编码与解码 编码的过程其实就是采用一定的编码格式将unicode字符转换成str字符的过程 非ASCII码字符按字节为单位被编码成十六进制转义字符 解码采用的编码格式跟设置和环境有关 ascii ...
- python之编码与解码
编码 字符串被当作url提交时会被自动进行url编码处理,在python里也有个urllib.urlencode的方法,可以很方便的把字典形式的参数进行url编码.当url地址含有中文或者“/”的时候 ...
- Python基础-编码与解码
一.什么是编码 编码是指信息从一种形式或格式转换为另一种形式或格式的过程. 在计算机中,编码,简而言之,就是将人能够读懂的信息(通常称为明文)转换为计算机能够读懂的信息.众所周知,计算机能够读懂的 ...
- 【转】python基础-编码与解码
[转自:https://www.cnblogs.com/OldJack/p/6658779.html] 一.什么是编码 编码是指信息从一种形式或格式转换为另一种形式或格式的过程. 在计算机中,编码,简 ...
- python之编码和解码
编码: 1. ascii. 有: 数字, 字母, 特殊字符. 8bit 1byte 128 最前面是0 2. gbk. 包含: ascii, 中文(主要), 日文, 韩文, 繁体文字. 16bit, ...
- python 元组编码和解码问题
先看一个例子: (u'agentEnum', True, '200', {u'msg': u'\u6210\u529f', u'code': 1}) 在2.7.15版本中,如果有下面代码: def f ...
- python字符编码与解码 unicode,str
解释以下几个问题: (1)python2中str和unicode是两种字符串类型,与字符编码方式是什么关系? (2)str和unicode是怎么相互转换的? (3)'\x...':'\u...', ' ...
随机推荐
- JS中简单的二级城市联动
代码奉上: <!DOCTYPE html><html><head> <meta charset="UTF-8"> < ...
- mssql sqlserver 索引专题
摘要: 下文将详细讲述sql server 索引的相关知识,如下所示: 实验环境: sql server 2008 R2 sqlserver索引简介: mssql sqlsever 索引分类简介 ms ...
- Checkpoint 和Breakpoint
参考:http://www.cnblogs.com/qiangshu/p/5241699.htmlhttp://www.cnblogs.com/biwork/p/3366724.html 1. Che ...
- 登陆验证AuthorizeAttribute
自定义验证,验证失败后:Response.Redirect.
- python之三元表达式、列表推导式、生成器表达式、递归、匿名函数、内置函数
一 三元表达式.列表推导式.生成器表达式 一 三元表达式 name=input('姓名>>: ') res='SB' if name == 'alex' else 'NB' print(r ...
- Clion 配置
plugins: one dark theme font : fira code retina
- 自己编写 EntityTypeConfiguration
1.新建类库 EFCore.EntityTypeConfig ,安装nuget PM> Install-Package Microsoft.EntityFrameworkCore 2.新建接口 ...
- jdk的安装及环境变量的配置
一.JDK的下载 1.首先打开JDK的官网(点击打开链接),找到JAVA SE 7u71/72中的JDK,选择Download 2.然后如下图,选择Accept License Agreement,则 ...
- 分享数百个 HT 工业互联网 2D 3D 可视化应用案例
过去的 2018 年,我们认为是国内工业互联网可视化的元年,图扑软件作为在工业可视化领域的重度参与者,一线见证了众多 HTML5/Web 化.2D/3D 化的项目在工业界应用落地,我们觉得有必要在此分 ...
- Git命令集
安装 Window https://gitforwindows.org/ MAC http://sourceforge.net/projects/git-osx-installer/ git conf ...