吐槽 & 备忘专用帖。
-
Python 3 整数除法用
//,/是精确除法,Python 2 整数除法用/1
2
3
47 / 3
2.3333333333333335
7 // 3
2 -
Python 整数除法向下取整,而 C、C++、Java 中均向 0 取整(直接截断小数)
1
2
3
47 // -3
-3
-7 // 3
-3取模运算结果与除法一致:
1
2
3
47 % -3
-2
-7 % 3
2总是满足 除数 * 商 + 取模 = 被除数
要截断取整,可以:
1
2int(7 / 3)
2 -
Python 不支持方法重载,可以用默认参数和可变参数实现类似功能
-
Python
int整数类型不存在溢出概念,溢出时自动扩充,因此也不存在最大最小整数的概念,如果要使用最大最小值可以用浮点定义:1
2
3
4float('inf')
inf
float('-inf') # 负无穷
-inf -
Python 是动态语言,自定义类中不能使用自己,因为自己还没被定义
-
Python 不支持常量(C/C++ 中的
const,Java 中的final) -
Python 类成员不支持
private、public之类的修饰,所有都默认是public-
以单下划线
_开头的,外部类仍可以直接使用,但用import *不会默认导入 -
以双下划线
__开头的,外部类可以间接使用
-
-
Python 类成员是类的成员,与实例无关,但可以被同名实例成员覆盖,即用实例无法访问该类成员,除非删除实例成员
-
Python 比较操作符
==调用__eq__方法,与 Java 中的equals方法类似;is与 Java 中的==类似,用于判断同一性 -
Python 3 逻辑非
not调用__bool__方法,返回值与实现有关,有些容器为空则返回False而有些容器返回True -
Python 不支持数组,数组可初始化指定长度
list实现 -
Python 不支持
do ... while ...语法





近期评论