python基础-14-史上最通俗易懂的编码讲解
来源:互联网 发布:linux添加sgid权限 编辑:程序博客网 时间:2024/06/05 11:00
常用编码 ascii unicode utf-8 gbk
编码 ascii
unicode
utf-8
gbk
机器底层 只认识0 1
计算机开始设计:8bit=1byte
(字节) 0000 0000
每个位置只有0和1, 2**8=256
也就是 0-255
西方国家:
ASCII表只有127个,每个字符一个字节
26个大写字母+26小写字母+10个数字+特殊字符=127个
西方国家127个已经够了,128到255预留给其他国家使用
汉字 常用5000个 简体繁体加起来有2万多个
- GB2312 6000汉字,兼容ASCII
- GBK 包括了GB2312 的所有内容,增加了近20000个新的汉字(包括繁体字)和符号。
- GB18030 将中国几乎所有的字符都收录了
编码混乱
各国都在将自己语言文字编码,ISO组织看不下去了,unicode应运而生
unicode又叫万国码,设计占用2个字节(不管什么字符,都是2字节)2**16
0-65535
UTF-8编码
- unicode是一个字符集,收录所有字符,并没有存储情况
- 英文只占1个字节 汉字占用3个字节
编码占用字节
- ascii 一个字节
- gbk 两个字节
- utf-8 英文字符1字节,汉字3字节
- unicode 占用 2个字节
windows编码查看
cmd
输入 chcp
活动代码页: 936 -->cp936 -->gbk
utf-8和gbk使用范围:
- utf-8存在的意义,节省空间,适用于英语字母比较多的情况。
- gbk适合中文比较多的情况。Windows编码为gbk,目的均为节省空间
python编码
在python3中:所有的字符串都是unicode,其他以utf-8编码
s='中文' #unicodeb=s.encode('utf8') #unicode-->utf8 每个汉字三个字节# b'\xe4\xb8\xad\xe6\x96\x87' 占用6个字节# \xe4 16进制c=s.encode('gbk') #unicode-->gbk 每个汉字两个字节b'\xd6\xd0\xce\xc4' 占用4个字节# encode 编码: 看得懂---》看不懂# decode 解码: 看不懂--->看的懂#python查看系统编码import syssys.getfilesystemencoding()sys.getdefaultencoding()
阅读全文
0 0
- python基础-14-史上最通俗易懂的编码讲解
- 通俗易懂的讲解Webservice
- 通俗易懂的讲解DOM
- 工厂模式-通俗易懂的讲解
- 非常通俗易懂的PCA讲解
- ORB算法讲解的通俗易懂
- 矩阵的本质-通俗易懂的讲解
- java线程安全-通俗易懂的讲解
- 单例模式 -通俗易懂的讲解
- 01背包通俗易懂的讲解(思想)
- IP地址分类(通俗易懂的讲解)
- EM算法及其通俗易懂的讲解
- 一个通俗易懂的DP入门讲解
- 通俗易懂的大白话讲解Map/Reduce原理
- 迄今为止最通俗易懂的MVP架构讲解
- 迄今为止最通俗易懂的RxJava讲解
- 红黑树讲解,觉得很通俗易懂的链接
- 最通俗易懂的01背包问题讲解
- List<Object>强制转换为List<String>
- leetcode 46|47. Permutations 1|2
- OpenGL-shader排除错误方法
- 封装OkHttp的网络请求
- MPU6050开发 -- 进阶之I2C/SPI通信协议
- python基础-14-史上最通俗易懂的编码讲解
- IgH EtherCAT Master 源码编译安装
- AndroidStudio打包APK提示“应用未安装”问题
- spring boot 输出访问地址
- Elastic search 系统学习之四: 文档API
- 解读大型网站系统架构的演化
- 调用第三方接口总结
- angular的scope.$last作用
- RROR com.alibaba.dubbo.rpc.filter.ExceptionFilter.invoke(ExceptionFilter.java:87): [DUBBO] Got unch