【问题标题】:What's the difference between not and ~ in pythonpython中not和~有什么区别
【发布时间】:2022-01-23 09:15:19
【问题描述】:

只是为了检查,我找不到任何关于 ~ 的信息,所以我想确保它是一样的。

另外,你能用!在 python 中就像在 C++ 中一样?

这两个代码似乎给出了相同的输出:

bool(~0)
bool(not 0)

【问题讨论】:

  • 不带bool()试试看有什么不同...?
  • not 将其操作数评估为 bool 并将其取反。 ~ 通常是“按位不”,但具体作用取决于每种类型。
  • 我投票结束这个问题,因为language reference 回答了这个问题。
  • print( (not 8) + (not 7) ,"vs", (~ 8) + (~ 7)) => 0 vs -18` - 似乎不一样。从一件相同的事情开始争论会忽略几乎无限数量的测试用例可能不一样。
  • 我搜索了“~”但找不到任何东西:/

标签: python python-3.x


【解决方案1】:

这就是它在 Python 中的样子。

'~' 是位运算符

而'not'是一个逻辑运算符

【讨论】:

  • 参考这里了解运营商 => w3schools.com/python/python_operators.asp
  • 请参阅 this 了解运算符。 W3S 并不是首要参考。
  • 我同意@deceze
  • 我引用了 W3S,因为它有一个示例和一个用于测试示例的编辑器。 OP似乎是初学者。 @deceze
【解决方案2】:

您应该阅读Python 3.10 documentationUnary arithmetic and bitwise operations


~ 运算符做了一个简单的工作:

反转位

【讨论】:

    猜你喜欢
    • 2011-05-09
    • 1970-01-01
    • 2023-01-22
    • 2017-05-21
    • 1970-01-01
    • 2011-04-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多