Python脱产8期 Day07 2019/4/19
字符编码
简介
- 1. 什么是字符编码:将人识别的字符转换计算机能识别的01,转换的规则就是字符编码表
- 2. 常用的编码表:ascii、unicode、GBK、Shift_JIS、Euc-kr
- 3. 编码操作:编码encode()、解码decode()
一.ASCII码
- 现代计算机起源于美国,所以最先考虑仅仅是让计算机识别英文字符,于是诞生了ASCII表
- 1.什么是ASCII表:英文字符、数字与机器能识别的字符的对应关系表
- 2.特点:
- #1.只有英文字符与数字的一一对应关系
- #2.一个英文字符对应1Bytes,1Bytes=8bit,8bit最多包含256个数字,可以对应256个字符,足够表示所有英文字
#3.python2采用的默认编码是ASCII,早期并不支持中文编程
二.GBK编码
- 为了让计算机能够识别中文和英文,中国人定制了GBK
特点:
- 1、只有中文字符、英文字符与数字的一一对应关系
- 2、一个英文字符对应1Bytes
- 一个中文字符对应2Bytes
- 补充说明:
- 1Bytes=8bit,8bit最多包含256个数字,可以对应256个字符,足够表示所有英文字符
- 2Bytes=16bit,16bit最多包含65536个数字,可以对应65536个字符,足够表示所有中文字符
补充:
- # Shift_JIS表的特点:
- 1、只有日文字符、英文字符与数字的一一对应关系
- # Euc-kr表的特点:
- 1、只有韩文字符、英文字符与数字的一一对应关系
unicode万国码
简介
- 1.世间中常用国家的常用字符与机器能识别的字符的对应关系表
- 2.unicode于1990年开始研发,1994年正式公布,具备两大特点:
- #1.存在所有语言中的所有字符与数字的一一对应关系,即兼容万国字符
- #2.与传统的字符编码的二进制数都有对应关系,
详解
- # 均采用Unicode编码表,只是存放数据采用字节数不一致,utf-8与utf-16是Unicode编码表的两种体现方式
- # utf-8:以1个字节存放英文,欧洲的是2个字节,以3 | 6个字节存放汉字,在英文数据过多时,更深空间,用来传输效率更高
- # utf-16:所有支持的符号都采用2个字节存放,读存数据采用定长,不用计算,读存效率高
- # 硬盘到内存需要数据的传输,内存到CPU需要数据的传输,所有都采用utf-8
- # 内存需要高速读写,采用utf-16
编码与解码
- # 学习的结晶:编码与解码要统一编码
- # 操作文本字符
- res = "汉字呵呵".encode('utf-8') # 编码:将普通字符串转化为二进制字符串
- print(res) # b'\xe6\xb1\x89\xe5\xad\x97\xe5\x91\xb5\xe5\x91\xb5'
- res = b'\xe5\x91\xb5\xe5\x91\xb5'.decode('GBK') # 解码:将二进制字符串转化为普通字符串
- print(res) # 鍛靛懙 乱码了
- res = b'\xe5\x91\xb5\xe5\x91\xb5'.decode('utf-8')
- print(res) # 呵呵 读写编码统一后就不乱码了
Python脱产8期 Day07 2019/4/19的更多相关文章
- Python脱产8期 Day12 2019/4/26
一 函数默认值的细节 1.如果函数的默认参数的默认值为变量,在所属函数定义阶段一执行就被确定为当时变量存放的值 例: a = 100def fn(num=a): print(num) # 100a = ...
- Python脱产8期 Day10 2019/4/24
一 函数 1.定义:完成 特定 功能的代码块,作为一个整体,对其进行特定的命名,该名字就代表函数>>工具. 2.函数的优点:1.避免代码的冗余:2.让程序结构代码更加清晰:3.让代码更加具 ...
- Python脱产8期 Day03 2019/4/15
一 变量的命名规范 1.只能由 字母, 数字, _, 组成. 2. 不能以数字开头 3.避免与系统关键字重名:重名不会报错,但系统的功能就被自定义的功能屏蔽掉了(严重不建议这样来做) 4.以_开头的 ...
- Python脱产8期 Day13 2019/4/28
一 函数的嵌套定义 1在一个函数的内部定义另一个函数. 2.为什么有函数的嵌套定义: # 1)函数fn2想直接使用fn1函数的局部变量,可以讲fn2直接定义到fn1的内部,这样fn2就可以直接访问fn ...
- Python脱产8期 Day11 2019/4/25
一 字符串比较 1.字符串比较:字符串对应的ascii进行比较 2.多个字符的字符串进行比较:从前往后逐个字符进行比较,一旦哪个位置的字符出现了大小关系就结束比较. 二 形参与实参 1.参数介绍: 函 ...
- Python脱产8期 Day09 2019/4/23
内存管理 一.引用计数:垃圾回收机制的依据 1.变量的值被引用,该值的引用计数 +12.变量的值被解绑,该值的引用计数 -13.引用计数为0时就会被垃圾回收机制回收 二.引用计数会出现循环引用问题:相 ...
- Python脱产8期 Day08 2019/4/22
一.三种字符串 1.普通字符串:u'以字符作为输出单位‘ #print(u‘abc’)#用于显示 2.二进制字符串:b'以字节作为输出单位’#用于传输 3.原义字符串:r‘以字符作为输出单位,原样输 ...
- Python脱产8期 Day06 2019/4/18
一 深浅拷贝 例:ls = [1, 'abc', [10]] 1.值拷贝:s1 = ls # ls1直接将ls中存放的地址拿过来,>ls内部的值发生任何变化,ls1都会随之变化. 2.浅拷 ...
- Python脱产8期 Day05 2019/4/17
数据类型的使用 一 数字类型 1.整型:int 2.浮点型:float 3.重点:数字类型直接相互转化 二字符串类型 一 1.定义:在单引号/双引号/三引号中包含一系列字符. 2.注意:可以通过引号的 ...
随机推荐
- BZOJ 1022: [SHOI2008]小约翰的游戏John (Anti-nim)
Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 3134 Solved: 2003[Submit][Status][Discuss] Descripti ...
- 95%的中国网站需要重写CSS
95%的中国网站需要重写CSS 很长一段时间,我都使用12px作为网站的主要字体大小.10px太小,眼睛很容易疲劳,14px虽容易看清,却破坏页面的美感.唯独12px在审美和视力方面都恰到好处. 谁对 ...
- 转载------35岁开始转变的观念(干了这碗鸡汤再写代码保证没有bug)
作为一个标准的IT男,从一开始的一线开发,做到管理层,又因为喜爱开发,跳槽继续专注coding,一干就是10多年.有时候就想,这样一直学习,coding,如果能干到老也挺不错的! 不过生活的压力是不会 ...
- Android studio 下的SDK Manager只显示已安装包的情况
原因是连接不上Google的更新服务器: 解决方法: 选择第三个Options: 修改Http Proxy Server: mirrors.neusoft.edu.cn Http Proxy Port ...
- Android 底部导航栏实现一 Fragment-replace
[效果](这里下载的软件收费的试用有水印) [推荐]这里推荐一个图标网http://iconfont.cn/.以上图标来自此图标网 [项目结构] [步骤] ①创建布局文件,写底部导航栏 <?xm ...
- Android 组件的三种点击事件写法
一.准备工作 1.项目结构 2.布局文件(activity_main.xml) <?xml version="1.0" encoding="utf-8"? ...
- Android RecycleView多种布局实现(工厂模式)
RecycleView是个很常用的控件,很多APP中都可以看到它的身影,同时它也是个很难用的控件,主要就难在多种布局的实现. 在<第一行代码—Android>这本书里边有个RecycleV ...
- <自动化测试方案书>方案书目录排版
自动化测试方案书 一.介绍 QQ交流群:585499566 这篇是一个系列,用来给需要做自动化测试方案的人做个参考,文章的内容是我收集网上和自己工作经验所得,希望能够给你们有所帮助 背景:因为工作需要 ...
- [20190329]探究sql语句相关mutexes补充2.txt
[20190329]探究sql语句相关mutexes补充2.txt --//昨天测试sql语句相关mutexes,看看如果出现多个子光标的情况. 1.环境:SCOTT@book> @ ver1P ...
- [20190306]共享服务模式与SDU.txt
[20190306]共享服务模式与SDU.txt --//一些文档提到共享服务模式,服务端SDU=65535,测试验证看看.--//链接:https://blogs.sap.com/2013/02/0 ...