主要内容 小数据池,is和==区别 编码问题

小数据池 一种缓存机制,也称为驻留机制,是为了能更快提高一些字符串和整数的处理速度is 和 == 的区别    == 主要指对变量值是否相等的判断,只要数值相同一定为真    is 主要是对变量内存地址是否相同的判断,变量值相同不一定为真,但是变量内存地址相同,则变量一定相同。 tips:可通过id()来查询变量id

why: 1.为什么会存在不同变量共用一个内存地址的情况?1.前面说到的小数据池,即缓存。一部分字符串会被放在缓存中被公用,以提高处理速度

why: 2.为什么command命令窗口中和在Pycharm中同样输入给a,b赋值,得到的结果不一样?  1.python程序是由代码块构成的. 一个代码块的文本作为python程序执行的单元.一个模块, 一个函数, 一个类, 甚至每一个command命令都是一个代码块. ⼀个文件也是一个代码块  2.在command命令窗口,a,b赋值是两个命令,而在Pycharm中认为是执行了一个文件(文件执行时(同⼀个代码块) 会把a, b两个变量量指向同⼀一个对象.)。所以结果会不一样

编码回顾:1. ASCII : 最早的编码. ⾥面有英文大写字母, 小写字母, 数字, ⼀一些特殊字符. 没有中⽂文,8个01代码, 8个bit, 1个byte2. GBK: 中⽂文国标码, ⾥面包含了了ASCII编码和中文常⽤用编码. 16个bit, 2个byte3. UNICODE: 万国码, ⾥面包含了了全世界所有国家文字的编码. 32个bit, 4个byte, 包含了了ASCII4. UTF-8: 可变⻓长度的万国码. 是unicode的⼀一种实现. 最⼩小字符占8位        1.英文: 8bit 1byte        2.欧洲文字:16bit 2byte        3.中文:24bit 3byte

解码和编码  不同编码之间存在转换的问题  tips:python2程序编码是ASCII 而python3位unicode编码a = "呵呵哈哈"s = a.encode("utf-8")# s = a.encode("gbk")print(s)解码a = b'\xba\xc7\xba\xc7\xb9\xfe\xb9\xfe'  #gbka1 = b'\xe5\x91\xb5\xe5\x91\xb5\xe5\x93\x88\xe5\x93\x88'  #utf-8s = a.decode("gbk")s1 = a1.decode("utf-8")print(s,s1)

why:如何将GBK 转换为 utf-8?  #先转成Unicode再转换为utf-8a = b'\xba\xc7\xba\xc7\xb9\xfe\xb9\xfe'  #gbks = a.decode("gbk")   #转成unicodeb = s.encode("utf-8")  #转成utf-8print(b)   #得到 utf-8   b'\xe5\x91\xb5\xe5\x91\xb5\xe5\x93\x88\xe5\x93\x88'

转载于:https://www.cnblogs.com/Mixtea/p/9844087.html

python基础之小数据池,is和==区别 编码问题相关推荐

  1. dya6小数据池、集合、编码、深浅copy

    一.小知识点: 1.id:测试内容的内存地址 s = 'abc' print(id(s) >>> 2174306953568 2.is:判断内存地址是否相等 s = 'abc' s1 ...

  2. python之路--小数据池,再谈编码,is和 == 的区别

    一 . 小数据池 # 小数据池针对的是: int, str, bool 在py文件中几乎所有的字符串都会缓存.# id() 查看变量的内存地址 s = 'attila' print(id(s)) 二 ...

  3. 相识python 之小数据池 集合

    ⼀一. ⼩小数据池 在说⼩小数据池之前. 我们先看⼀一个概念念. 什什么是代码块: 根据提示我们从官⽅方⽂文档找到了了这样的说法: A Python program is constructed fr ...

  4. python编码和小数据池

    python_day_6 一. 回顾上周所有内容 一. python基础 Python是一门解释型. 弱类型语言 print("内容", "内容", end=& ...

  5. python代码块-python小数据池,代码块的最详细、深入剖析

    一,id,is,== 在Python中,id是什么?id是内存地址,那就有人问了,什么是内存地址呢? 你只要创建一个数据(对象)那么都会在内存中开辟一个空间,将这个数据临时加在到内存中,那么这个空间是 ...

  6. 21天学通python电子版-小数据池,深浅拷贝,集合+菜中菜

    小数据池,不同代码块的缓存机制,也称为小整数缓存机制,或者称为驻留机制等等,博主认为,只要你在网上查到的这些名字其实说的都是一个意思,叫什么因人而异. 那么到底什么是小数据池?他有什么作用呢? 前提条 ...

  7. Python中的驻留机制:小数据池和代码块

    Python 中的驻留机制主要有两个:小数据池和代码块.驻留机制并不是学习 Python 过程中特别重要的概念,我们学习小数据池的目的主要有两个方面: 1.解决日后写代码过程中可能出现的疑惑.在后期开 ...

  8. python小数据池,代码块的最详细、深入剖析

    一. id is == 二. 代码块 三. 小数据池 四. 总结 一,id,is,== 在Python中,id是什么?id是内存地址,那就有人问了,什么是内存地址呢? 你只要创建一个数据(对象)那么都 ...

  9. Python小数据池,代码块

    今日内容一些小的干货 一. id is == 二. 代码块 三. 小数据池 四. 总结 python小数据池,代码块的最详细.深入剖析 一. id is == 二. 代码块 三. 小数据池 四. 总结 ...

  10. Python小数据池

    一. id is == 二. 代码块 三. 小数据池 四. 总结 一,id,is,== 在Python中,id是什么?id是内存地址,那就有人问了,什么是内存地址呢? 你只要创建一个数据(对象)那么都 ...

最新文章

  1. NIPS2018 | 腾讯AI Lab入选20篇论文,含2篇Spotlight
  2. 老师,免费版的IDEA为啥不能使用Tomcat?
  3. 帆软报表(finereport) 动态报表
  4. Python基础教程(第3版)之一些内置的异常类
  5. Linux+CLion+cmake 动态链接库的使用
  6. 【开源项目】基于FFmpeg的封装格式转换
  7. Response.Redirect ,Server.Excute和Server.Transfer区别详解
  8. V210 UART 整体流程
  9. liunx -bash:ls:command not found,执行命令总是报找不到
  10. [bzoj1355][Baltic2009]Radio Transmission_KMP
  11. dataframe 空值替换为0_Python数据结构大结局:DataFrame
  12. linux计算机网络一般需要配置哪几部分,计算机网络技术 知识及应用第4章Linux操作系统和常用服务器配置.ppt...
  13. 她力量系列八丨陈丹琦:我希望女生能够得到更多的机会,男生和女生之间的gap会逐渐不存在的
  14. Context 是什么意思
  15. 邯郸三中高考2021成绩查询,邯郸2021年中考统考成绩
  16. java基础-宇宙第一YWM:数组数算题目记录
  17. vue3关闭语法检测
  18. PHP 生成带logo二维码并修改背景颜色,利用画布布局二维样式
  19. 静电纺聚丙烯腈纳米级纤维滤膜的制备
  20. 用python玩3x3数字华容道

热门文章

  1. 电脑硬盘分区合并_简单扩容电脑C盘,无需U盘重装系统
  2. 目标检测(二)--Hough Forests for Object Detection
  3. linux 监控进程调度,linux进程启动调度监控和管理
  4. java中文乱码decode_Java WEB开发中的中文乱码问题解决
  5. ssl证书 所属项目怎么上传_Typora + 七牛云图床快速配置,告别手动上传图片!...
  6. Spark Session 与 Spark Context的区别
  7. Hive数据导出入门
  8. Linux下将你的程序打包成run文件
  9. 阿里centos php版本升级
  10. struts2 中的 addActionError 、addFieldError、addActionMessage方法的区别添加错误信息