python基础小知识点补充及编码

Posted Worth Waiting For

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python基础小知识点补充及编码相关的知识,希望对你有一定的参考价值。

python2和python3的区别

1.编码:

python2默认的编码是ascii码,python3默认的编码是utf-8

2.print:

python2.7打印的时候可以不加括号,python3打印必须加括号 否则报错

3.range:

python2中是xrange,python3是range

4.input:

python2中是raw_input  python3中是input

=,==和is的区别

=是赋值符号

==是比较符号比较值是否相等

is比较的是内存地址

小数据池   (为了节省内存)

数字 

范围:-5--256

x=10
y=25
print(id(x),id(y))      x和y的内存地址是相同的
数字的有效范围是-5到256:如果俩个变量的取值范围都在-5到256之间 那么它们的内存地址相同

字符串

具体的范围还不确定,但是有一些规律可以参考

1.字符串中 不能含有特殊字符

s1=alex

s2=alex
print(s1  is  s2)------>True 

s3=[email protected]
s4=[email protected]

print(s3  is  s4) ------>False

2

字符串一个字符相乘,前20个范围内是同一个内存地址:
s1=h*20
s2=h*20
print(s1  is  s2)--->True

字符串一个字符相乘,超出20范围的是同俩个内存地址:
s1=h*21
s2=h*21
print(s1   is   s2)--->False

其他数据类型

list  dic   tuple   set 都没有小数据池这个概念

以list为例:
l1=[1,]
l2=[1,]

print(l1  is  l2)--->False

编码

ASCII

没有中文  只有英文    一个字节(bytes)==8个位(bit)

Unicode

英文:   32个位      4个字节

中文:   32个位      4个字节

utf-8

英文:  8个位     1个字节

中文:      24个位     3个字节

GBK

英文:  8个位       1个字节

中文: 16个位      2个字节

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

2.文件的存储 传输不能是Unicode(只能是utf-8  utf-16,gbk,gb2312...)

 

以上是关于python基础小知识点补充及编码的主要内容,如果未能解决你的问题,请参考以下文章

python基础--小知识点汇总及编码进阶

day-3 小知识点补充 编码 集合 文件及函数初识

Python之第七天的努力--基础数据类型补充,编码进阶

Python之第七天的努力--基础数据类型补充,编码进阶

Python基础之小知识要点

Python 之路 Day02 -基础数据类型及编码详解