博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 编码相关
阅读量:5886 次
发布时间:2019-06-19

本文共 1368 字,大约阅读时间需要 4 分钟。

编码的使用

  ascii: 数字,字母, 特殊字符 组成

            字节: 8bit        1byte

        gbk: 国标码。16bit, 2byte

   unicode: 万国码。32bit, 4byte

        utf-8:可变长度的unicode

            英文: 1byte 8bit

            欧洲文字: 2byte,16bit

            中文: 3byte, 24bit

以上的所有的编码都兼容ascii码,所以除了ascii码之外,其他信息不能直接进行转换

 

因为python2默认使用的是asslli 码进行编码,所以在python 2中的编码文件如下

 指明python解释器所在路径和编码的方式

 

  在python3中的内存里使用的是unicode编码,但是在保存代码时使用的是utf-8的编码方式。原因是unicode适合进行计算但是不适合存储,utf-8适合存储和传输

  在python3的内存中. 在程序运行阶段. 使用的是unicode编码. 因为unicode是万国码. 什么内容都可以进行显示. 那么在数据传输和存储的时候由于unicode比较浪费空间和资源. 需要把unicode转存成UTF-8或者GBK进行存储. 怎么转换呢. 在python中可以把文字信息进行编码.编码之后的内容就可以进行传输了. 编码之后的数据是bytes类型的数据.其实啊. 还是原来的数据只是经过编码之后表现形式发生了改变而已.

 

bytes的表现形式(一般认为bytes是python中最小的数据单元)

b'xxxxx' 这种格式的数据是bytes类型的数据,数据传输中。包括文字。 图片。 视频都是bytes。转换成bytes的时候一般是用于传输和存储

       对于英文: 无论使用什么的编码方式转换的bytes都是与ascii码一样的

eg:

  对于中文:由于utf-8 与 gbk中对于中文的编码使用的字节是不一样的utf-8使用的是3个字节表示一个中文字符,而gbk 使用的是2个字节对应一个中文字符

所以中文转化成bytes,如下:

 

  

  在网络传输和存储的时候我们python是保存和存储的bytes类型. 那么在对方接收的时候. 也是接收的bytes类型的数据. 我们可以使用decode()来进行解码操作. 把bytes类型的数据还原回我们熟悉的字符串:

对上面的进行解码如下:

 

小数据池

  小数据池. 一种数据缓存机制. 也被称为驻留机制. 各大编程语言中都有类似的东西. 在⽹上搜索常量量池,小数据池指的都是同一个内容.小数据池只针对:整数, 字符串, 布尔值. 其他的数据类型不存在驻留机制,对于整数,python中对-5到256之间的整数会被驻留在内存中. 但是不在这个区间的话,是不存在驻留机制的

 

但在pycharm 中只要你只是对变量进行赋值,但是没有进行运算的话,那么无论字符串是多长或者数据有多大都是用友驻留的机制,但是进行运算之后都会按照上面的方式判断是否存在驻留

小数据池 is和==的区别

       == 判断左右两端的值是否相等. 是不是一致.

判断左右两端内容的内存地址是否一致. 如果返回True, 那可以确定这两个变量使

用的是同一个对象

 

转载于:https://www.cnblogs.com/vivi0403/p/9843820.html

你可能感兴趣的文章
WM_COMMAND产生的条件
查看>>
http响应Last-Modified和ETag
查看>>
MySQL索引类型一览 让MySQL高效运行起来
查看>>
Linux下启动停止查看杀死Tomcat进程
查看>>
bt分析之bt种子发布---做种(2)
查看>>
makefile(一)makefile文件组成
查看>>
我的友情链接
查看>>
Java异步线程池中处理logback MDC
查看>>
CentOS 6.3开机自动联网
查看>>
springMVC 拦截器 HandlerInterceptor 用法
查看>>
C# System.Data.OracleClient requires Oracle client software version 8.1.7 or greater
查看>>
X-UA-Compatible兼容模式
查看>>
设计模式之观察者模式
查看>>
lucene-JE中文分词
查看>>
AWK手册
查看>>
项目简介
查看>>
驼峰风格字符串转换为下滑线风格字符串
查看>>
ios图片倒影效果的实现
查看>>
SPSS Modeler K-Means聚类结果评价
查看>>
easyui left-tabs 左侧的tabs
查看>>