码迷,mamicode.com
首页 > 编程语言 > 详细

python 6

时间:2018-05-06 20:10:06      阅读:218      评论:0      收藏:0      [点我收藏+]

标签:查询   pytho   直接   decode   范围   pre   div   方式   open   

一、小数据池

可以使用

id(name)

查询‘name‘在内存中的地址,这个地址会在不断地变化。

 

小数据池:

int,str在一定范围内,如果两个数值相同,为了节省内存,共用一个内存地址。

int:-5 ~ 256

str:①有非字母元素就不存在小数据池

       ②单个字母 * int(21)以内就存在小数据池

剩下的类型都不存在。

 

二、编码

str:python3中的编码方式是 Unicode

 

with open(02 作业讲解.py, encoding=utf-8) as fi:
    print(f1.read(), type(f1.read()))

以上为读取一个文件,并查看该文件类型。

<class ‘str‘>

文件的存储和传输都是通过str类型进行的。

由于python3中编码方式为Unicode,所以不能直接用于存储和传输,因为Unicode编码占内存过于浪费。

需要先转换为bytes,bytes类型的编码方式为 非Unicode。

s = 中国
s1 = s.encode(utf-8)
s2 = s.encode(gbk)
print(s1)
print(s2)
b\xe4\xb8\xad\xe5\x9b\xbd
b\xd6\xd0\xb9\xfa

以上为将str转换为bytes类型的方式:编码

s1 = s1.decode(utf-8)
print(s1)
中国

从bytes转换为str可以用decode:解码

 

python 6

标签:查询   pytho   直接   decode   范围   pre   div   方式   open   

原文地址:https://www.cnblogs.com/leonraw/p/8999205.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!