is 和 ==的区别

 1. is 和 == 的区别

#小数据池

# 数字小数据池的范围 -5 ~ 256
# 字符串中如果有特殊字符他们的内存地址就不一样
# 字符串中单个*20以内他们的内存地址一样,单个*21以上内存地址不一致



# a = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
# b = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'
# print(a is b) True

# n = -6
# n1 = -6
# print(n is n1) #False

# n = -5
# n1 = -5
# print(n is n1) #True


# n = 257
# n1 = 257
# print(n is n1) #False


#总结:

# == 比较 比较的俩边的值

# is 比较 比较的是内存地址 id()

2. 编码和解码

ascii 码:

不支持 中文

支持 英文 数字 符号

8位 一个字节

gbk码 国标:

支持 中文,英文,数字,符号

英文 16位 二个字节

中文 16位 二个字节


unicode 万国码

支持 中文,英文,数字,符号

英文 32 位 四个字节

中文 32位 四个字节


utf-8 长度可变的万国码 最少用8位

英文 8位 一个字节
中文 24位 三个字节


Python3中 程序运行阶段 使用的是unicode 显示所有的内容

bytes类型

传输和存储都是使用bytes

pycharm 存储的时候默认是使用utf-8

总结:

is 和 == 区别

is 比较内存地址

id() ---- 获取内存地址

小数据池:

数字的小数据池范围是 -5 ~ 256

字符串:

字符串中不能包含特殊符号 + - * / @ 等等
字符串单个字符*20以内内存地址都是一样的,单个字符*21以上内存地址不一致

注意: pycharm是个坑, 一个py文件中所有相同的字符串 一般都是使用一样的内存地址

== 比较俩边的值

编码和解码

encode(编码方式) ---- 拿到明文编码后对应的字节

decode(编码方式) ---- 将编码后的字节解码成对应的明文

转载于:https://www.cnblogs.com/zhang970723/p/9409434.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值