Python
SUMUP
变量
变量的声明和赋值
将变量绑定到一个对象上
变量名=表达式
运行过程中,解释器先运行右边的表达式,生成一个代表表达式运算结果的对象,然后将对象地址赋给左边的变量
变量在使用前必须先被初始化
删除和垃圾回收机制
通过del删除不再使用的变量
如果对象没有被变量引用,会被垃圾回收器回收,清空内存空间
赋值
- 链式赋值:同一个对象赋值给多个变量 x=y=123
- 系列解包赋值:a,b,c=4,5,6 相当于 a=4, b=5, c=6
a,b=b,a可以实现值的互换
常量
Python不支持常量
我们只能约定常量的命名规则(**大写字母+下划线),并在程序逻辑上不对其进行修改
数据类型
-
整型:包含十进制、二进制(0B)、八进制(0O)、十六进制(0X)
int()实现类型转换:浮点数略去小数部分,布尔值True转为1,False转为0
字符串符合的转为对应整数
与浮点数混合运算时结果自动转为浮点数
int可存储任意大小的整数,不会造成整数溢出
Python 仅仅对比较小的整数对象进行缓存(范围为[-5, 256])缓存起来,而并非是所有整数对
象。需要注意的是,这仅仅是在命令行中执行,而在Pycharm 或者保存为文件执行,结果是不一样的,这是因为解释器做了一部分优化(范围是[-5,任意正整数])。 -
浮点型
用 a × 1 0 b a\times 10^b a×10b(aEb) 的科学计数法表示,这些数字在内存中也按照科学计数法存储
float()实现类型转换
round()返回四舍五入的值(不改变原有值,而是产生新的值)
时间的表示,使用unix时间点:1970年1月1日00:00:00
Python中,time.time()获得当前时刻
-
布尔型
以True和False作为关键字,但本质还是0和1,甚至可以和数字相加 -
字符串型
运算符
基本运算符
运算符 | 说明 |
---|---|
and , or , not | 布尔与、布尔或、布尔非 |
is , is not | 同一性判断,判断是否为同一个对象 |
<,<=,>,>=,!=,== | 比较值是否相当,可以连用 |
^ & | 按位或,按位异或、按位与 |
<<, >> | 移位 |
~ | 按位翻转 |
+,-,*,/,//,% | 加,减,乘,浮点除、整数除、取余 |
** | 幂运算 |
divmod() | 得到商和余数 |
复合运算符
P.S. Python不支持自加和自减
同一运算符
比较两个对象的存储单元,实际是比较对象的地址
is 用于判断两个变量引用对象是否为同一个,既比较对象的地址。
== 用于判断引用变量引用对象的值是否相等,默认调用对象的__eq__()方法。
运算符 | 描述 |
---|---|
is | is 是判断两个标识符是不是引用同一个对象 |
is | not is not 是判断两个标识符是不是引用不同对象 |
运算符优先级
位运算和算术运算>比较运算符>赋值运算符>逻辑运算符