id,is的用法,小数据池的概念及编码知识进阶
一:id 查询内存地址
name = 'alex'
print(id(name))
li = [1,2,3]
print(id(li))
二:is 判断的是内存地址
name1 = 'alex@'
name2 = 'alex@'
print(name1 == name2)
print(name1 is name2)
三:小数据池
小数据池主要是针对数字,字符串两种类型而言的,对于数字而言,其范围在-5--256之间,对于字符串而言,如果其全部由字母组成,都是指向一个内存地址。如果是数字与str(单个字母)想乘,则20以内(包含20)的是同一个内存地址,其他数据类型 则没有小数据池概念。
四:编码知识进阶
1,不同编码之间是不能互相识别对方的二进制,会报错,或者产生乱码.
2,在你的字符串(文件),存储,传输时,必须使用非unicode的二进制(01010101).
3,py3:字符串:编码方式(在内存中的运行方式):默认都是unicode.
4,字符串和字节的关系
byte 对于非中文: 表现形式: b'alex' 内部编码: utf-8 gbk,gb2312...(非unicode) 你设定的.
对于中文: 表现形式: b'xe3\xf2\x36\xe3\xf2\x36\' 内部编码: utf-8 gbk,gb2312...(非unicode) 你设定的.
str 对于非中文: 表现形式: 'alex' 内部编码: unicode
对于中文: 表现形式: '中国' 内部编码: unicode
5,str和byte的转化
1,当字符串为英文时,程序如下:
s = 'alex'
b = s.encode('utf-8')
b1 = s.encode('gbk')
print(s,type(s))
print(b,type(b))
print(b1,type(b1))
2,当字符串为中文时,程序如下:
s = '中国'
b = s.encode('utf-8')
b1 = s.encode('gbk')
print(s,type(s))
print(b,type(b))
print(b1,type(b1))
id,is的用法,小数据池的概念及编码知识进阶的更多相关文章
- python之路day06--python2/3小区别,小数据池的概念,编码的进阶str转为bytes类型,编码和解码
python2#print() print'abc'#range() xrange()生成器#raw_input() python3# print('abc')# range()# input() = ...
- Python基础篇 -- 小数据池和再谈编码
小数据池 1. id() 通过id()可以查看到一个变量表示的值在内存中的地址 s = "Agoni" print(id(s)) # 2410961093272 2. is 和 = ...
- day 006 小数据池和再谈编码
1.小数据池. 目的:缓存我们的字符串,整数,布尔值.在使用的时候不需要创建过多的对象 缓存: int str bool int 范围:-5~256 str: 1.长度小于等于1,直接缓存 2.长度大 ...
- python:id与小数据池与编码
一.id与小数据池 id:查的是内存地址 a = 100 b = 100 print(a == b)#比较的数值 print(a is b)#比较的是id print(id(a),id(b))#id相 ...
- Python基础学习Day6 is id == 区别,代码块,小数据池 ---->>编码
一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...
- 323 id与小数据池
a = 1000b = 1000print(a == b)== 比较的是数值is 比较的是内存地址.print(a is b)查看内存地址id()print(id(a))print(id(b)) 小数 ...
- python基础之小数据池
一,id,is,== 在Python中,id是什么?id是内存地址,比如你利用id()内置函数去查询一个数据的内存地址: name = '太白' print(id(name)) # 158583128 ...
- python代码块,小数据池,驻留机制深入剖析
一,什么是代码块. 根据官网提示我们可以获知: 根据提示我们从官方文档找到了这样的说法: A Python program is constructed from code blocks. A blo ...
- day06 内存地址 小数据池缓存机制
1. 内存相关 示例一 v1=[11,22,33] v2=[11,22,33] #值相等 内存地址不等 v1=11 v2=11 #按理说内存地址应该不等,但是python为了优化使其内存地址相等 v1 ...
随机推荐
- 商业智能(BI)选型手册(转载)
摘自http://articles.e-works.net.cn/bi/Article126429.htm 1.前言 互联网时代企业数据呈现爆发式增长,全面考验着企业的数据处理和分析能力.面对大容量. ...
- TurnipBit开发板掷骰子小游戏DIY教程实例
转载请以链接形式注明文章来源(MicroPythonQQ技术交流群:157816561,公众号:MicroPython玩家汇) 0x00前言 下面带大家用TurnipBit开发板实现一个简单的小游戏- ...
- Nginx服务器配置之location语法分析
location基本语法:location [=|~|~*|^~] /uri/ { - } = 严格匹配.如果这个查询匹配,那么将停止搜索并立即处理此请求. ~ 为区分大小写匹配(可用正则表达式) ! ...
- 使用CJSON库实现XML与JSON格式的相互转化
之前完成了一个两个平台对接的项目.由于这两个平台一个是使用json格式的数据,一个是使用xml格式的数据,要实现它们二者的对接就涉及到这两个数据格式的转化,在查阅相关资料的时候发现了这个CJSON库, ...
- 【译】巧用CSS变量实现自动前缀
转:https://www.h5jun.com/post/autoprefixing-with-css-variables-lea-verou.html 最近,当我在制作 markapp.io 这个小 ...
- Python模块学习系列
python模块-time python模块-datetime python模块-OS模块详解
- Zabbix实战-简易教程(1)--总流程
序 玩zabbix已经几年了,一直想分享一些相关的使用经验和心得,但是总以各种借口而拖延,最近准备重新整理,记录一些实际工作环境中的示例,一方面希望能够帮助正在学习或者正在寻找这方面资料的朋友,另一方 ...
- Zabbix实战-简易教程--排错(持续收集中)
一.安装错误 1.zabbix 安装故障之无法跳到下一步或点击下一步没反应 执行命令:chownnginx:nginx /var/lib/php/session/ -R 2.proxy上无法采集交 ...
- Java异常(输出[D@139a55问题)
简单给出一段代码说明问题: public class Main { public static void main(String[] args) { double a[]={1,4,3,2}; Sys ...
- BZOJ:1185: [HNOI2007]最小矩形覆盖
1185: [HNOI2007]最小矩形覆盖 这计算几何……果然很烦…… 发现自己不会旋转卡壳,补了下,然后发现求凸包也不会…… 凸包:找一个最左下的点,其他点按照与它连边的夹角排序,然后维护一个栈用 ...