一、占位符%
%s:字符串占位符
%d:数字占位符
注:当数据中有百分数时,需要用%% 来表示
二、运算
1、算数运算
%:取模或者取余数
**:幂(几次方)
//:整除,返回整数部分
2、赋值运算
+=:a+=c :(a=a+c)
-=:a-=c:(a=a-c)
/=;%=;*=;//=;**=
3、逻辑运算
()> not > and > or :(优先级)
4、
三、比较
>:大于
<:小于
!=:不等于(<>)
>=:大于等于
<=:小于等于
四、is 和 == 的区别
==:双等于(判断和比较,比较的是值)
is :是(比较的是内存地址)
五、编码
encode:拿到明文编码后对应的字节
decode:将编码后的字节解码成对应的明文
六、字节编码
ASCII:阿斯克码:一个字节8个bit,不支持中文
GBK:国标码:2个字节表示一个字符,中英文都是
UTF-8:万国码:UTF-8中每个字符所占的字节数是不定的,从1到4个字节都可能。
英文1个字节,欧洲文字2个字节,汉字3个字节
Unicode:包含utf-8,utf-16,utf-32,GB2312(二进制)
七、深浅拷贝
1、浅拷贝
"="赋值的拷贝:直接赋值,默认浅拷贝传递对象的引用而已,原始列表改变,被赋值的b也会做相同的改变。
a.copy():浅拷贝只拷贝第一层子对象,没有拷贝第二层子对象,所以原始数据和第二层子对象存在相互影响。
原因:copy浅拷贝的第一层子对象,都各自独自指向其内存空间,但第二层的子对象供用一个指针入口,
如果有一个指针发生偏移指向另外一个内存地址,则会相互影响共同指向另一个内存地址,
对第一层子对象不影响。
2、深拷贝
a.copy.deepcopy():深拷贝之后内存地址发生改变,