1.编码转换
Python3.x 之后
str 字符串 在内存中的编码使用 unicode
str = '中文'
bytes 类型
bytes1 = b'ab', 在引号前加字母b, 表示 是 bytes 类型
str 转 bytes 类型 称为 编码
str 转 utf-8
b1 = str.encode('utf-8') print(len(b1)) 6, 一个中文 是3个字节
str 转 gbk 国标码
b2 = str.encode('gbk') print(len(b2)) 4, 一个中文是 2个字节
bytes类型 转 str 类型, 解码
utf-8 转 str
s1 = b1.decode()
gbk 转 str
s2 = b2.decodek('gbk')
2.代码块
一个文件, 一个函数,一个模块, 中的代码,可以统称为 一个代码块
3. 小数据池, 缓存优化, 驻存优化
小整数 -5~256
def func1():
a = 100
b = 100
print(a is b) True
在同一个函数中, 变量 a 和 b 的值都是 100,
python内部优化, a 和 b 指向的内存地址 都是 存储 100 的内存地址编号
is 就是 判断 两个变量存储内容的地址编号 是否相等
id() 返回的就是 变量存储内容的地址编号
print( id(a), id(b))
== 是判断变量的数值是否相等
is 是判断变量的地址编号是否相等 ,注意区分