not
语法
not(X)
或 !(X)
参数
X 可以是标量、数据对、向量或矩阵。
详情
返回对 X 应用 NOT 的值。返回值是 0, 1 或 NULL。 0 的 NOT 值是 1;NULL 的 NOT 值仍是 NULL;所有其他值的 NOT 值是 0。
not 函数和运算符 ! 在大部分场景下可以相互替代,但仍然存在一些区别:
- not 与括号结合时,被当作函数处理,具有最高优先级;
- not 不与括号结合时,则优先级较低,会先运算 not 右边的表达式,再运算 not。例如:not false and false 等价于 not(false and false),结果为 true。
- 运算符 "!" 则总是按照运算符优先级执行。例如:!false and false 等价于 (!false) and false,结果为 false。
例子
!1.5;
# output
0
not 0;
# output
1
x=1 0 2;
not x;
# output
[0,1,0]
m=1 1 1 1 1 0 0 0 0 0$2:5;
m;
#0 | #1 | #2 | #3 | #4 |
---|---|---|---|---|
1 | 1 | 1 | 0 | 0 |
1 | 1 | 0 | 0 | 0 |
not m;
#0 | #1 | #2 | #3 | #4 |
---|---|---|---|---|
0 | 0 | 0 | 1 | 1 |
0 | 0 | 1 | 1 | 1 |
(1).not();
# output
0
(!NULL)==NULL;
# output
1