1. 矩阵运算
A∗B+2∗A≠A∗(B+2)A∗B+2∗A=A∗(B+2∗I)
而实质上(对于像 numpy 以及 matlab 这样的高级编程语言来说):
A∗(B+2)=A∗(B+2∗ones(size(A)))
2. 注意一些函数的返回值为 None
- (1)random.shuffle(seq)
3. &
与 and
- 没有
&&
运算符 &
仅表示按位相与,&
的优先级高于>
- 5 > 0 & 6 > 0:False,其本质上的结合律为 5 > (0 & 6) > 0
- (5 > 0) & (6 > 0):True
and 表示逻辑与,不存在优先级的问题
4. 逻辑判断与 is/not
>> ~True
-2 ~1
>> ~False
-1 ~0
>> not False
True
5. range 是左闭右开区间
- 正序的 0-10:range(0, 11)
- 逆序的 10-0:range(10, -1, -1)