python - python中的二进制否定

标签 python bit-manipulation

我似乎无法在 Python 的任何地方找到作为运算符的整数的逻辑否定。

目前我正在使用这个:

def not_(x):
    assert x in (0, 1)
    return abs(1-x)

但是我觉得有点傻。没有内置的运算符吗?逻辑否定 (not) 返回一个 bool 值——这不是我真正想要的。是否有不同的运算符,或者有什么方法可以让 not 返回一个整数,或者我是否坚持使用这种狡猾的解决方法?

最佳答案

您可以使用:

int(not x)

将 bool 值转换为 0 或 1。

关于python - python中的二进制否定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6924520/

相关文章:

python - 我的 Postgres 查询如何执行得更快?我可以使用 Python 来提供更快的迭代吗?

python - 初学者的 python 类构造函数不带参数

python - super(ClassName,self).__init__() 有什么用

python - 使用 %timeit 命令为整个 IPython notebook 计时?

Java在一个long中存储两个整数

c++ - 一点列移位

python - 使用线程等待类变量更改

c++ - 什么时候右移操作>>移位符号位,什么时候不移位?

c - 使用位操作查找最小值

计算无符号整数中的位数