-
python基础(8):基本数据类型三(dict)、is和==、编码和解码(3)
从测试来看:
is 比较的是内存地址
2.3 特殊情况-小数据池
2.3.1 数字小数据池的范围 -5 ~ 256
- n = -6
- n1 = -6
- print(n is n1) #False
- n = -5
- n1 = -5
- print(n is n1) #True
- n = 257
- n1 = 257 # 在pycharm中会显示true,在终端中是false,因为pycharm会做出它认为是优化的方案,但是却打破了python的功能
- print(n is n1) #True
2.3.2 字符串中如果有特殊字符他们的内存地址就不一样
- a = 'alex@'a1 = 'alex@'print(a is a1) # Fales
2.3.3 字符串中单个*20以内他们的内存地址一样,单个*21以上内存地址不一致
- a = 'a'*21b = 'a'*21print(a is b) #False
- a = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'b = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa'print(a is b) #True
回到顶部(go to top)
3. 编码和解码
3.1 几种编码
ASCII码:
不支持中文
支持英文、数字、符号
8位 一个字节
GBK码 国标:
支持 中文,英文,数字,符号
英文 16位 二个字节
中文 16位 二个字节
UNICODE万国码:
支持 中文,英文,数字,符号
英文 32 位 四个字节
中文 32位 四个字节
UTF-8:
长度可变的万国码 最少用8位
英文 8位 一个字节 中文 24位 三个字节
3.2 编码和解码操作
encode(编码方式) ---- 拿到明文编码后对应的字节
decode(编码方式) -----将编码后的字节解码成对应的明文
- s = 'alex'print(s.encode('utf-8')) # 编码 encode('utf-8') utf-8 是指定要编码成什么样的编码类型print(s1.decode('utf-8')) #
- s = '饿了's1 = s.encode('gbk') #b'饿了吗' #b'\xe9\xa5\xbf\xe4\xba\x86\xe5\x90\x97'print(s.encode('gbk')) #b'\xb6\xf6\xc1\xcb\xc2\xf0'print(s1)print(s1.decode('utf-8'))
注意: 用什么进行编码就要什么进行解码 不然后会懵逼!
最新更新
nodejs爬虫
Python正则表达式完全指南
爬取豆瓣Top250图书数据
shp 地图文件批量添加字段
爬虫小试牛刀(爬取学校通知公告)
【python基础】函数-初识函数
【python基础】函数-返回值
HTTP请求:requests模块基础使用必知必会
Python初学者友好丨详解参数传递类型
如何有效管理爬虫流量?
2个场景实例讲解GaussDB(DWS)基表统计信息估
常用的 SQL Server 关键字及其含义
动手分析SQL Server中的事务中使用的锁
openGauss内核分析:SQL by pass & 经典执行
一招教你如何高效批量导入与更新数据
天天写SQL,这些神奇的特性你知道吗?
openGauss内核分析:执行计划生成
[IM002]Navicat ODBC驱动器管理器 未发现数据
初入Sql Server 之 存储过程的简单使用
SQL Server -- 解决存储过程传入参数作为s
JavaScript判断两个数组相等的四类方法
js如何操作video标签
React实战--利用甘特图和看板,强化Paas平
【记录】正则替换的偏方
前端下载 Blob 类型整理
抽象语法树AST必知必会
关于JS定时器的整理
JS中使用Promise.all控制所有的异步请求都完
js中字符串的方法
import-local执行流程与node模块路径解析流程