加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

Python:一些小知识

发布时间:2020-12-17 00:00:22 所属栏目:Python 来源:网络整理
导读:小知识点总结 一、Python2与Python3?的区别 1、Python2中可以加括号输出,也可不加输出 ? ? Python3中必须加 2、python2?中有xrange(生成器)也有range ? ? python3中只有range 3、python2中的input为raw_input ? ? ?python3?中为input 二、‘=’与is的区别

小知识点总结

一、Python2与Python3?的区别
1、Python2中可以加括号输出,也可不加输出
? ? Python3中必须加
2、python2?中有xrange(生成器)也有range
? ? python3中只有range
3、python2中的input为raw_input
? ? ?python3?中为input
二、‘=’与is的区别
1、
内存地址,对于赋值运算来说?指向同一个地址

li1 = [1,2,3]
li2 = li1
print(li1 is li2)---->True
print(id(li1),id(li2))
2、数字,字符串?小数据池
int的小数据池:数字的范围-5---256数字在这个范围之内,会共用一个内存地址
字符串的小数据池:不能含有特殊字符。有特殊字符不能共用一个内存地址。s*2o还是同一个地址,s*21以后都是两个地址。只能是一个字符
4,剩下的?list?dict?tuple?set没有小数据池的概念
5,python3中的编码
ascii一个字符用一个字节,8位表示
unicode A:用32位来表示。4个字节。中:4个字节
?uft-8:英文是8位1个字节,中文用24位3个字节来表示
gbk :? 英文用1个字节8位来表示,中文用16位,2个字节来表示。
(1)各个编码之间的二进制是不能互相识别的,会产生乱码
(2)文件的储存,传输,不能是Unicode(只能是utf-8,utf-16,gbk,gb2312,ascii等)
py3:?
?? ?str?在内存中使用Unicode编码。
?? ?? ? bytes类型一种特殊的数据类型,和str很像,但不是以unicode编码。
??? ??? ?对于英文:
?? ??? ??? ??? ?? ? str的表现形式---》s = 'alex'
?? ??? ??? ??? ??? ??? ?? ? 编码方式:0101010010? Unicode
?? ??? ??? ??? ??? ??bytes:?表现形式:?s =b'alex'
?? ??? ??? ??? ??? ??? ?? ? 编码方式:utf-8

对于中文:
?? ??? ??? ??? ?? ? str的表现形式---》s = '中国'
?? ??? ??? ??? ??? ??? ?? ? 编码方式:0101010010? Unicode
?? ??? ??? ??? ??? ??bytes:?表现形式:?s =b'xe91e91e01e21e31e32'(16进制)
?? ??? ???
怎么转换
#encode如何将str--》bytes类型
s1 == s1.encode()(s11)------>b s2 == s2.encode(
?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读