码迷,mamicode.com
首页 > 其他好文 > 详细

小数据池、编码补充

时间:2018-01-28 12:41:05      阅读:127      评论:0      收藏:0      [点我收藏+]

标签:之间   编码方式   判断   十六   width   使用   height   col   blog   

 

1、== is id

id查询内存地址

is判断的是内存地址

2、小数据池

Python int str 有小数据池,为了节省内存,其他的数据类型没有小数据池

int范围-5到256

str如果全部由字母组成的字符串,都是指向一个内存地址

如果是str(单个字母)与数字相乘,则数字是20以内(包含20)是同一个内存地址

其它数据类型,则没有小数据池概念

3、编码进阶

技术分享图片

技术分享图片

 

GBK用英文8位,中文16位

①不同编码之间是不能互相识别对方的二进制,会报错,或者产生乱码。

②在你的字符串(文件)存储、传输时,必须使用非Unicode的二进制。

PY3中:

字符串:编码方式(在内存中的运行方式):默认都是Unicode

byte类型。

bytes对于非中文:表现形式为:b‘alex‘  内部编码:Utf -8,gbk,gb2312....(非Unicod)

bytes对于中文:表现形式:十六进制b‘xe3\xf2\x36\xe3\xf2\x36\‘  内部编码:Utf -8,gbk,gb2312....(非Unicod)

Str类型

str对于非中文:表现形式为:‘alex‘  内部编码:Unicode

str对于中文:表现形式:‘中国‘  内部编码:Unicode

 

 英文:

s = alex
b = s.encode(utf-8)
print(s,type(s))
print(b,type(b))

技术分享图片

 

中文:

s = 我爱中国
b = s.encode(utf-8)
print(s,type(s))
print(b,type(b))

技术分享图片

 

小数据池、编码补充

标签:之间   编码方式   判断   十六   width   使用   height   col   blog   

原文地址:https://www.cnblogs.com/strive-man/p/8370727.html

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