字符编码和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. 编码: ...
随机推荐
- Git_1基础操作,从安装到提交完成(windows)
github地址:https://github.com/zhangsai521314/Git 1:安装Git Bash(https://git-scm.com/),安装一路NEXT. 2:目录架构: ...
- iframe布局
代码如下: <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF ...
- mySQL 50个查询系列
http://bubufx.com/detail-1749088.html http://www.jb51.net/article/67932.htm Student(S#,Sname,Sage,Ss ...
- You Don't Know JS: Scope & Closures(翻译)
Chapter 1: What is Scope? 第一章:什么是作用域 One of the most fundamental paradigms of nearly all programming ...
- arguments.callee的用法
argument为函数内部对象,包含传入函数的所有参数,arguments.callee代表函数名,多用于递归调用,防止函数执行与函数名紧紧耦合的现象,对于没有函数名的匿名函数也非常起作用.举例如下: ...
- checkbox点击后出现div
HTML: <div class="msg_editUrl_function"> <label class="labelChecked" fo ...
- HTTP历程
原文http://www.ruanyifeng.com/blog/2016/08/http.html 1.HTTP/0.9 HTTP是基于TCP/IP协议的应用层协议.它不涉及数据包传输,主要规定了客 ...
- request和session作用域的意义
1.简单说 page指当前页面.在一个jsp页面里有效 ,page里的变量没法从index.jsp传递到test.jsp.只要页面跳转了,它们就不见了.2.request 指从http请求到服务器处理 ...
- WINDOWS7(vs2012+wdk7.6) 配置驱动开发环境
合肥程序员群:49313181. 合肥实名程序员群:128131462 (不愿透露姓名和信息者勿加入) Q Q:408365330 E-Mail:egojit@qq.com 1.新建C ...
- linux head、tail、sed、cut、grep、find
head用法: head 参数 文件名 -cn:显示前n个字节 -n:显示前n行 例子:head -c20 1.txt 显示1.txt文件中前20个字符 ls | head -20:显示前20 ...