python:id与小数据池与编码
一、id与小数据池
id:查的是内存地址
a = 100
b = 100
print(a == b)#比较的数值
print(a is b)#比较的是id
print(id(a),id(b))#id相同
小数据池
小数据:
数字:-5 ~ 256 为了节省空间
字符串:1.如果含有特殊字符,不存在小数据池
其他都不存在小数据池。
二、编码
1.编码之间的二进制互不识别
2.存储和传输010101,但不能是unicode的010101
python3x中的编码
python3x中str在内存中的编码方式是unicode。python3x中的str不能直接存储,和发送。
bytes 他的编码方式是非unicode(utf-8,gbk,gb2012)
对于英文
str:表现形式:s = ‘abcd’
内部编码:unicode
bytes;表现形式:s = b‘abcd’
内部编码:非unicode
对于中文
str:表现形式:s = ‘中国’
内部编码:unicode
bytes:表现形式:s = b‘\xe4\xb8\xad\xe5\x9b\xbd’
内部编码:非uncoide
三、转化
#unicode 转化换成byte的utf-8
s = 'aihalohuyouu'
s1 = s.encode('utf-8')
print(s1)#b'aihalohuyouu' q = '中国'
q1 = q.encode('utf-8')
print(q1)#b'\xe4\xb8\xad\xe5\x9b\xbd' #unicde转换成byte的gbk s= 'aihalohuyouu'
s2 = s.encode('gbk')
print(s2)#b'aihalohuyouu' q = '中国'
q1 = q.encode('gbk')
print(q1)#b'\xd6\xd0\xb9\xfa'
decode
将encode的数据decode回去
python:id与小数据池与编码的更多相关文章
- python 浅谈小数据池和编码
⼀. ⼩数据池 在说⼩数据池之前. 我们先看⼀个概念. 什么是代码块: 根据提示我们从官⽅⽂档找到了这样的说法: A Python program is constructed from code b ...
- python学习笔记:第6天 小数据池和编码转换
目录 1. id 和 == 2. 小数据池 3. 编码和解码 1. id 和 == id:id是一个内置的函数,可以查看变量存放的内存地址(实际上不是真正的物理地址,这里暂时这样理解),用于判断是变量 ...
- 323 id与小数据池
a = 1000b = 1000print(a == b)== 比较的是数值is 比较的是内存地址.print(a is b)查看内存地址id()print(id(a))print(id(b)) 小数 ...
- 百万年薪python之路 -- 小数据池和代码块
1.小数据池和代码块 # 小数据池 -- 缓存机制(驻留机制) # == 判断两边内容是否相等 # a = 10 # b = 10 # print(a == b) # is 是 # a = 10 # ...
- python基础之小数据池、代码块、编码和字节之间换算
一.代码块.if True: print(333) print(666) while 1: a = 1 b = 2 print(a+b) for i in '12324354': print(i) 虽 ...
- python基础之小数据池,is和==区别 编码问题
主要内容 小数据池,is和==区别 编码问题 小数据池 一种缓存机制,也称为驻留机制,是为了能更快提高一些字符串和整数的处理速度is 和 == 的区别 == 主要指对变量值是否相等的判断,只要数值相同 ...
- 《Python》 代码块、小数据池和编码转换
一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 什么是代码块:一个py文件,一个函数,一个文件,一个类都是一个代码块. 作为交互方式输入的每一行 ...
- python基础之小数据池、代码块、编码
一.代码块.if True: print(333) print(666) while 1: a = 1 b = 2 print(a+b) for i in '12324354': print(i) 虽 ...
- Python基础篇 -- 小数据池和再谈编码
小数据池 1. id() 通过id()可以查看到一个变量表示的值在内存中的地址 s = "Agoni" print(id(s)) # 2410961093272 2. is 和 = ...
随机推荐
- UI 增加文本
1.直接在节点上增加VALUE NODE. 2.写GET,SET,I,P的相关实现 method GET_ZH12. DATA: lr_current TYPE REF TO if_bol_bo_pr ...
- golang并发(1)介绍
概述 简而言之,所谓并发编程是指在一台处理器上“同时”处理多个任务. 随着硬件的发展,并发程序变得越来越重要.Web服务器会一次处理成千上万的请求.平板电脑和手机app在渲染用户画面同时还会后台执行各 ...
- vscode 快捷键
ctrl+/ 单行注释:// 若要多行注释://,先选中这些要注释的行,再按ctrl+/ shift+Alt+A 多行注释 撤销刚才的操作:Ctrl+Z 恢复刚才的操作:Ctrl+Shift+Z ...
- Go程序设计
01 Go基础特性&独有特性
- Alpha 冲刺 (10/10)
Alpha 冲刺 (10/10) 队名:第三视角 组长博客链接 本次作业链接 团队部分 团队燃尽图 工作情况汇报 张扬(组长) 过去两天完成了哪些任务: 文字/口头描述: 1.和愈明.韫月一起对接 2 ...
- java中的\b是什么意思?
java中有2个地方有\b,一个是特殊字符\b,另一个是在正则表达式中表示边界的意思. 我们这里只讨论特殊字符\b 我这里一共接受到几种解释: 1.退格符相当于键盘上的Backspace符号 back ...
- plsql中文乱码问题
问题: 打开 plsql,执行 sql 语句,中文显示乱码: 解决方案: 1)输入 sql 语句 select userenv('language') from dual 查看数据库字符集 输出结 ...
- effective java——30使用enum
1, 枚举太阳系八大行星 package com.enum30.www; public enum Planet {//枚举太阳系八大行星 MERCURY(3.302e+23,2.439e6), VEN ...
- case语法2
case流程控制语句在linux中有其独到的一面,使得在编程过程中能够在脚本编写的过程中具备多个选项功能,使其功能多样化,其具备简单,快速的特点. 一.case流程语句结构图 根据流程图可以知道,在所 ...
- Linux分区知识及企业场景分区76
文件系统就相当于装修一样.这个硬盘拿过来了,分完区了,没有格式化. 没有格式化就相当于没有装修.[分区]不是必须的. 如果没有文件系统就不能放数据,文件系统可以理解为一个软件, 它的实现形式是软件,这 ...