字符编码和python .encode().decode()方法
字符编码与encode、decode的问题:
用8个开关表示世界万物
ASCII : American Standard Code for Information Interchange,美国信息互换标准代码,只用了前7位,127个状态
GB2312:是对ASCII的中文扩展(前127不变,大于127的+后边另一个大于127的表示中文)两个字节表示一个汉字
GBK:包括了GB2312 的所有内容,增加了近20000个新的汉字(包括繁体字)和符号
GB18030:加了几千个新的少数民族的字,GBK的扩展
以上的汉字编码标准叫做“DBCS“(Double Byte Character Set 双字节字符集)
Universal Multiple-Octet Coded Character Set”,简称 UCS, 俗称 “unicode“。unicode中“字节”表示8位的物理存储单元,“字符”表示文化符号,一个汉字是一个字符,占三个字节;
Unicode是一个字符集,UTF-8,UTF-16,UTF-32都是这个字符集上的编码方式。而ASCII,GBK等都是其它字符集,默认都只有一个对应的编码方式。
ASCII每个字符占一个byte也就是1个字节;utf-8每个字符占1-6个变长的字节;unicode根据编码的不同所占的字节数也是不同的。
byte(字节流)——>str: decode()方法;读取网页上的信息a=urllib.request.urlopen(url);a是一个“<class 'http.client.HTTPResponse'>”,a.read()读取网页上的内容,读取的内容是根据网页的编码方式比如(Content-Type: text/html; charset=utf-8)表示html页面是unicode字符集用utf-8的格式表示的bytes字节流,要是变成能看懂得就得用.decode()方法(decode在python3.5中默认是‘utf-8’),将bytes解码为str,这样就可以显示汉字了。
str——>byte:用str.encode()方法;以Unicode表示的str通过encode()方法编码为指定的bytes。
字符编码和python .encode().decode()方法的更多相关文章
- python编码问题之\"encode\"&\"decode\"
python encode decode 编码 decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode('gb2312'),表示将gb2312编码的字符串str1转换 ...
- Python bytes decode() 方法
描述 bytes decode() 方法以指定的编码格式解码 bytes 对象,默认编码为 'utf-8'. 对应的编码方法:encode() 方法 . 语法 Python bytes decode( ...
- 字符编码和Python代码操作文件
字符编码和Python代码操作文件 读写模式之a模式 # a模式 只追加模式 # 路径不存在:自动创建 with open(r'a.txt','a',encoding='utf8') as f: pa ...
- 字符编码和python中的文件处理
字符编码与python文件处理 ---------------- 字符编码 1.常见的编码 ASCII: 美国人发明的,只编码英文字母和符号,1个字节. GB2312: 中国人发明的,增加了中文汉字和 ...
- 字符编码和python使用encode,decode转换utf-8, gbk, gb2312
ASCII码 标准ASCII码使用7位二进制数表示大写或小写字母,数字0到9标点符号以及在美式英语中使用的特殊控制字符. 在标准ASCII码中,最高位(b7)用作奇偶校验位,所谓奇偶校验,是指在代码传 ...
- 字符编码和python文件操作
字符编码和文件操作 目录 字符编码和文件操作 1. 字符编码 1.1 什么是字符编码 1.2 字符编码的发展史 1.2.1 ASCII码 1.2.2 各国编码 1.2.3 Unicode 1.3 字符 ...
- python encode decode
Python encode()encode() 方法以 encoding 指定的编码格式编码字符串.errors参数可以指定不同的错误处理方案.写法:str.encode(encoding='UTF- ...
- 字符编码到python编辑器流程
字符(存储了信息的东西)编码(): 键盘发送的是电流-->主机(内存)接受到电流(当作010100110101)-->显示屏 接受电流(当作010100110101------->键 ...
- 字符编码,python解释器------总结
目录 1. 编码: 1.字符编码 2. 编码的历史 3. 编码和解码 2. python解释器 解释代码的流程 1. 读取文本到解释器 2. 识别代码(检查语法问题) 3. 往终端打印 1. 编码: ...
随机推荐
- djangocms安装技巧
首先python的版本要高一些,否则安装django-cms会报错 安装cmsinstaller不能够正常下载 利用virtualenv进行安装配置 注意中文的配置 djangocms配置中文 dja ...
- .net mvc利用NPOI导入导出excel
1.导出Excel :首先引用NPOI包(Action一定要用FileResult) /// <summary> /// 批量导出需要导出的列表 /// </summary> ...
- build.fxbuild打不开 Failed to create the part's controls
Failed to create the part's controls 以文本形式打开之后,发现编码的地方不是常用编码 将之修改为GBK 然后就可以正常打开了 最后把eclipse中的编码统一设置为 ...
- Remoting&WebService的区别之处
Remoting与Web Services的区别是:(1)既支持TCP信道又支持HTTP信道,传输速度快(2)即可传输XML的SOAP包又可传输二进制流,效率高(3)Remoteing主要用于C/S结 ...
- nginx学习记录/2016.11.14
nginx(engine X)是一个高性能的web服务器和反向代理服务器以及电子邮件代理服务器 由俄罗斯的程序设计师Igor Sysoev所开发 nginx+tomcat实现负载均衡 参考地址:htt ...
- css学习笔记 5
将css引入到html页面中的方法: 用style属性设置样式 用<style>标签设置样式 用<link>标签引入外部样式文件 用@import引入外部样式文件 <li ...
- JAVA GUI
JAVA GUI中的事件处理: 委托事件模型:事件源对象和监听器对象具有绑定关系 一个监听器可以绑定多个事件源 一个事件源也可以绑定多个监听器 监听器有各自监听的事件类型 设置容器的布局管 ...
- JAV07接口与继承之动手动脑问题解决
动手动脑:请自行编写代码测试以下特性:在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. 1.源代码: package Work; class A{ public A(){ System ...
- C# 反射浅析
反射是一个运行库类型发现的过程.通过反射可以得到一个给定程序集所包含的所有类型的列表,这个列表包括给定类型中定义的方法.字段.属性和事件.此外,通过反射也可以动态的发现一组给定类支持的接口.方法的参数 ...
- Web自动化基础(一)使用Selenium定位元素
什么是元素?我们知道网页上有什么内容显示出来,比如一个按钮,一个输入框,一张图片,都可以理解成元素,这些元素是由html代码构成的,比如图片可以用<img>标签来展示,一个输入框可以用&l ...