python 小知识

小知识总结

python2与python3 在编程格式上有一定程度的不同

python2                                                    python3

print 'xxxxx'                                               print()

在python2中print后面可以不用小括号,而python3是必须的

range()  xrange()                                      range()

生成器python2可以用这两种方式,但是python3只能这一种

raw_input()                                               input()

python的输出前面有个 raw_  ,python3就不需要,相对更简洁

= 赋值    == 比较值是否相等     is  比较(比较的是内存地址)      id 内容

数字,字符串的小数据池概念

小数据池是python为了提高效率,对小值数据使用同一地址的做法

数字的范围在 -5--256 时会共用同一地址

字符串:

1.不能有特殊字符

2.x*20之前还是同一地址  之后都是两个地址

list  dict  tuple  set  没有小数据池的概念

编码

各个编码之间的二进制是不能互相识别的,会产生乱码

文件的存储,传输不能是unicode,只能是utf-8 utf-16 gbk  gbk2312  ascii等

因为unicode是32位编码方式,占用的内存比较大

python3的str在内存中是用unicode编码,str在转换成bytes类型再进行存储和传输

 

.encode()    编码 将str转换成bytes

posted @ 2017-12-21 18:55  GrandDarkness  阅读(150)  评论(0编辑  收藏  举报