zoukankan      html  css  js  c++  java
  • 1.小数据池 2.is 和 == 的区别 3.编码补充(编码和解码格式)

    1. 小数据池:
    	目的:缓存我们字符串,整数,布尔值,在使用的时候不需要创建过多的对象。
    	小数据池只针对:整数(int)、字符串(str)、布尔值(bool),其它数据类型不存在驻留机制。
    	优点:能够提高一些字符串、整数的处理速度,省略创建对象的过程。
    	缺点:在“池”中创建或者插入新的内容会花费更多的时间。
    		对于int(整数): -5~256是会被加到小数据池中的. 每次使用都是同一个对象.
    	对于字符串:
    		1. 如果字符串的长度是0或者1, 都会默认进行缓存
    		2. 字符串长度大于1, 但是字符串中只包含字母, 数字, 下划线时才会缓存
    		3. 用乘法的到的字符串. ①. 乘数为1, 仅包含数字, 字⺟, 下划线时会被缓存. 如果
    		包含其他字符, 度<=1 也会被驻存, ②. 乘数大于1 . 仅包含数字, 字母, 下划
    		线这个时候会被缓存. 但字符串长度不能小于20
    		4. 指定驻留. 我们可以通过sys模块中的intern()函数来指定要驻留的内容.
    		
    	代码块的关系:如果在同一个代码块中。默认的整数和字符串还有布尔值都会进行缓存.
    				如果涉及计算。尊崇上面的规则如果跨代码块,按照上面的规则执行的。
    		
    		
    2. is 和 == 的区别:
    		== 判断走哦有两段的值是否相等,是不是一致。
    		is 判断左右两端的内容的内存地址是否一致,如果返回Ture,那可以确定这两个变量使用的是同一个对象。
    		  ( 可以这样认为, 内存地址相同,值一定相等;但值相等,内存地址不一定相同)
    		
    		
    3.编码的补充;
    		1.python2中默认使用的编码是ASCLL码,所以不支持中文,如果需要在python2中更改编码,
    		  需要在文件的开始编写:
    				# -*- encoding:utf-8 -*-
    			python3中:内存中是用的是unicode码。
    	编码回顾:
    		1. ASCII : 最早的编码. 里面有英文大写字母, 小写字母, 数字, 一些特殊字符. 没有中文,
    			8个01代码, 8个bit, 1个byte
    		2. GBK: 中文国标码, 里面包含了ASCII编码和中文常用编码. 16个bit, 2个byte
    		3. UNICODE: 万国码, 里面包含了全世界所有国家文字的编码. 32个bit, 4个byte, 包含了
    			ASCII
    		4. UTF-8: 可变长度的万国码. 是unicode的一种实现. 最小字符占8位
    			1.英文: 8bit 1byte
    			2.欧洲文字:16bit 2byte
    			3.中文:24bit 3byte
    
    		综上, 除了ASCII码以外, 其他信息不能直接转换.
    		
    		在python3的内存中. 在程序运行阶段. 使用的是unicode编码. 因为unicode是万国码. 什么内
    		容都可以进行显示. 那么在数据传输和存储的时候由于unicode比较浪费空间和资源. 需要把
    		unicode转存成UTF-8或者GBK进行存储. 怎么转换呢. 在python中可以把文字信息进行编码.
    		编码之后的内容就可以进行传输了. 编码之后的数据是bytes类型的数据。
    		
    		编码和解码的编码格式:
    		



              decode(解码) 和 encode(编码):
    			python3内存中使用的是unicode。
    			unicode => utf-8  encode("utf-8")
    			utf-8 => unicode  decode("utf-8")
    			utf-8和gbk不能直接转换
    			bytes是字符串的另一种表示形式
    		
  • 相关阅读:
    HDU 1878 欧拉回路(DFS)
    HDU 2181 哈密顿绕行世界问题(DFS)
    HDU 1181 变形课(DFS)
    HDU 1029 Ignatius and the Princess IV(map应用)
    HDU 1242 Rescue(BFS)
    HDU 1027 Ignatius and the Princess II(STL)
    将项目部署到本地IIS时出现的奇怪问题
    [转]30个你必须记住的css选择器
    打开一个从网络上下载的chm文件时出现“已取消到该网页的导航”
    [转]使用Modernizr 检测HTML5和CSS3浏览器支持功能
  • 原文地址:https://www.cnblogs.com/zhao-peng-/p/9622241.html
Copyright © 2011-2022 走看看