python2与python3的区别 ,小数据池 bytes 类型
一、python2和3的区别
在python3中 在python2中
print('ab')方式打印内容()括号是必须要有的。 print 'ab' 可以加可以不加。
只有range 有range还有xrange(生成器)
用户交换用input 用户交换用raw_input
二、赋值:
比较值是否相等。
is:比较的是内存地址。
id:比较的id是否相同。
==:比较两个值是否相等。
li1 = [1,2,3]
li2 = li1
print(id(li1),id(li2))
print(li1 is li2)
三、小数据池
在小数据池里的,数字的范围在 -5 --- 256 之间。
l2 = 6
l3 = 6
print(id(l2),id(l3)) id相同
l2 = 600
l3 = 600
print(id(l2),id(l3)) id不同
在小数据池里,字符串:1.不能有特殊字符,2.s*20 还是同一个地址,s*21以后过都是两个地址。
s1 = 'a' * 20
s2 = 'a' * 20
print(s1 is s2) True
s1 = 'a' * 21
s2 = 'a' * 21
print(s1 is s2) False
使用pycharm会不准,建议用终端尝试。列表、字典、元祖、集合没有这个概念。
四、bytes类型
1,各个编码之间的二进制,是不能互相识别的,会产生乱码。
2,文件的储存,传输,不能是unicode(因为unicode是32位太大)只能是utf-8 utf-16 gbk,gb2312,asciid等
对于英文:
str:表现形式:s = 'alex'
编码方式:00000001 unicode
bytes:表现形式:s = b'alex'
编码方式:00000000 utf-8、gbk。。。。
对于中文:
str:表现形式:s = '中国'
编码方式:00000010 unicode
bytes:表现形式:s = b‘\xe4\xb8\xad\xe5\x9b\xbd'
编码方式:00000010 utf-8、gbk....
转换命令:
编码:encode 把str转换成bytes,unicode转换成utf-8或gbk
s = '中国'
print(s.encode('utf-8'))
print(s.encode('gbk'))
s2 = b'alex'
print(s2)
python2与python3的区别 ,小数据池 bytes 类型的更多相关文章
- is 与 == 的区别;小数据池; 编码与解码
1, is 与 == 的区别 == 比较的是两边的值 is 比较的是两边的地址 id () 2,小数据池(在终端中) 数字小数据池的范围 -5 ~ 256 字符串中如果有特殊字符他们的内存地址 ...
- is和==的区别,小数据池,编码
1 is 和 == 的区别 1> id( )表示我们可以通过它来查到在内存中的地址 s = "alex" lst = [1,2, 4] lst = [1, 2, ...
- python之路--小数据池,再谈编码,is和 == 的区别
一 . 小数据池 # 小数据池针对的是: int, str, bool 在py文件中几乎所有的字符串都会缓存. # id() 查看变量的内存地址 s = 'attila' print(id(s)) 二 ...
- python基础之小数据池,is和==区别 编码问题
主要内容 小数据池,is和==区别 编码问题 小数据池 一种缓存机制,也称为驻留机制,是为了能更快提高一些字符串和整数的处理速度is 和 == 的区别 == 主要指对变量值是否相等的判断,只要数值相同 ...
- python之路day06--python2/3小区别,小数据池的概念,编码的进阶str转为bytes类型,编码和解码
python2#print() print'abc'#range() xrange()生成器#raw_input() python3# print('abc')# range()# input() = ...
- Python基础学习Day6 is id == 区别,代码块,小数据池 ---->>编码
一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...
- 小数据池、is 和 ==的区别
小数据池,在一定情况下出现内存共享(只有int 和 str 才有的) is 和 ==的区别 id() 打印数据的地址 a = 'hello' b = 'hello' print(a = ...
- 小数据池 is 和 ==的区别
小数据池 一.小数据池 1)代码块 python程序是由代码块构成的,一个代码块的文本作为pythont程序执行的单元 官方文档: A Python program is constructed fr ...
- 小数据池,is和==的区别,id()
小数据池 概念 存放数据缓存的地方 目的 节省内存,提高效率 什么数据会被缓存(什么数据会放在小数据池中) 数字 字符串 布尔 优点: 可以帮我们快速的创建对象.节省内存. 缺点: ...
随机推荐
- 切换用户,显示用户名, 调用Windows系统命令
CONN 用户名/密码 CONN sys/密码 AS SYSDBA | SYSOPER SHOW USER SELECT * FROM 用户名.表名; 调用Windows系统命令: HOST Wind ...
- SpringMVC框架(二)注解 (转)
原文地址:http://www.cnblogs.com/yjq520/p/6734422.html 1.@Controller @Controller 用于标记在一个类上,使用它标记的类就是一个Spr ...
- sourceTree每次拉取代码和提交代码都需要输入密码
今天新安装的sourceTree导入项目,拉取代码的时候一直提示让我输入git密码,每次拉取和提交的时候都需要重新输入密码,甚是麻烦,在网上,搜索,解决办法五花八门,这里提供一种简单有效的方法供大家参 ...
- iOS 电脑新装的系统, 使用sourceTree 创建本地仓库的时候, 总是提示, 无效路径
把qq聊天记录分享出来: 我电脑新装的系统, 使用sourceTree 创建本地仓库的时候, 总是提示, 无效路径请问哪位遇到过求指教群里有产品经理没有? ssh 配制的不对重装系统过后,重新生成一下 ...
- C#中MessageBox用法大全(转)
我们在程序中经常会用到MessageBox. MessageBox.Show()共有21中重载方法.现将其常见用法总结如下: 1.MessageBox.Show("Hello~~~~&quo ...
- android中Log类的封装
1.为了方便的使用Log打印日志,以及后续方便撤销日志打印,所以对Log类进行封装是一件好事. package market.phone; import android.util.Log; /** * ...
- hibernate核心API使用
1.Configuration 加载核心配置文件,核心配置文件名称和位置固定,否则会找不到 2.SessionFactory对象一个项目只创建一个,大家公用 根据配置文件和映射关系创建表 由于要创建表 ...
- SET与SPLIT
所以说不要以为前一天考了什么后一天就不会考这类的东西了 出题人总是能竭尽所能 打破你的下限qaq naive split 详解blog来自ljz大佬:http://blog.csdn.net/ljz_ ...
- Cleaner, more elegant, and harder to recognize(翻译)
Cleaner, more elegant, and harder to recognize 更整洁,更优雅,但更难识别 看来,有些人把我几个月前一篇文章的标题"Cleaner,more e ...
- 任务调度 -----> quartz 不同时间间隔调度任务
Quartz Quartz是OpenSymphony开源组织在Job scheduling领域又一个开源项目,它可以与J2EE与J2SE应用程序相结合也可以单独使用.Quartz可以用来创建简单或为运 ...