一、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 类型的更多相关文章

  1. is 与 == 的区别;小数据池; 编码与解码

    1, is 与 == 的区别 ==  比较的是两边的值 is   比较的是两边的地址  id () 2,小数据池(在终端中) 数字小数据池的范围 -5 ~ 256 字符串中如果有特殊字符他们的内存地址 ...

  2. is和==的区别,小数据池,编码

    1   is  和  == 的区别 1>    id( )表示我们可以通过它来查到在内存中的地址 s = "alex" lst = [1,2, 4] lst = [1, 2, ...

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

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

  4. python基础之小数据池,is和==区别 编码问题

    主要内容 小数据池,is和==区别 编码问题 小数据池 一种缓存机制,也称为驻留机制,是为了能更快提高一些字符串和整数的处理速度is 和 == 的区别 == 主要指对变量值是否相等的判断,只要数值相同 ...

  5. python之路day06--python2/3小区别,小数据池的概念,编码的进阶str转为bytes类型,编码和解码

    python2#print() print'abc'#range() xrange()生成器#raw_input() python3# print('abc')# range()# input() = ...

  6. Python基础学习Day6 is id == 区别,代码块,小数据池 ---->>编码

    一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 代码块:一个模块,一个函数,一个类,一个文件等都是一个代码块. 而作为交互方式输入的每个命令都是 ...

  7. 小数据池、is 和 ==的区别

    小数据池,在一定情况下出现内存共享(只有int  和 str 才有的)   is 和 ==的区别 id()     打印数据的地址 a  = 'hello' b = 'hello' print(a = ...

  8. 小数据池 is 和 ==的区别

    小数据池 一.小数据池 1)代码块 python程序是由代码块构成的,一个代码块的文本作为pythont程序执行的单元 官方文档: A Python program is constructed fr ...

  9. 小数据池,is和==的区别,id()

    小数据池 概念  存放数据缓存的地方 目的   节省内存,提高效率 什么数据会被缓存(什么数据会放在小数据池中)    数字  字符串    布尔 优点: 可以帮我们快速的创建对象.节省内存. 缺点: ...

随机推荐

  1. 以通配符(%)开始的like字符串,走索引

    在对oracle的SQL优化过程中经常会遇到[like'%abc']破坏索引的问题,但是如果真有此类需求,该如何在不破坏索引的基础上进行查询呢. [sql] view plain copy sys@m ...

  2. org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable representation

    异常信息 org.springframework.web.HttpMediaTypeNotAcceptableException: Could not find acceptable represen ...

  3. dubbo+zookeeper+jsp+springmvc+spring+mybatis+mysql+maven完整示例

    项目分为三部分,这里分为三个maven项目(基于web,所以最后一个为maven创建的web项目) 1.接口定义以及实体类定义(api+pojo) --- maven创建java项目,打包成jar 2 ...

  4. JMeter循环控制器循环次数使用变量控制注意事项

    1.进入循环控制器之前变量要有值: 2.BeanShell处理文件,读取行数,赋值给变量,要有相应的Sampler,不然脚本不会运行. 对于单个线程来说,假如设置了循环2次,线程启动后,运行结束,此时 ...

  5. 用于文件系统的C库函数

    9/20/2017 学<LINUX C编程实战>中 1.打开 File *fopen(const char *path , const char * mode); fopen实现打开指定的 ...

  6. 解读JavaScript原型链

    var F = function(){}; F.prototype.a = function(){}; Object.prototype.b = function(){}; Function.prot ...

  7. class_copyIvarList方法获取实例变量问题引发的思考

    在runtime.h中,你可以通过其中的一个方法来获取实例变量,那就是class_copyIvarList方法,具体的实现如下: - (NSArray *)ivarArray:(Class)cls { ...

  8. bat常用命令

    1.@它的作用是隐藏它后面这一行的命令本身(只能影响当前行).2.echo中文为"反馈"."回显"的意思.它其实是一个开关命令,就是说它只有两种状态:打开和关闭 ...

  9. css3 结构性伪类选择器

    伪类 选择器 类型 说明 备注 E:first-line 伪元素选择器 选择匹配E元素内的第一行文本 E:first-letter 伪元素选择器 选择匹配E元素内的第一个字符 E:before 伪元素 ...

  10. mysql 数据表字段修改sql 语句

    1 新增字段 alter table bulletin add citycode varchar(6) not null default 0 [after `id`]; # 城市代码 2 修改字段 a ...