是&;及<;及>;python中的等价物?

是&;及<;及>;python中的等价物?,python,operators,bitwise-operators,boolean-operations,Python,Operators,Bitwise Operators,Boolean Operations,与Python中的&符号相比,使用单词和的逻辑或性能有什么不同吗?和是一个布尔运算符。它将两个参数都视为布尔值,如果是falsy,则返回第一个参数,否则返回第二个参数。请注意,如果第一个参数是falsy,那么第二个参数甚至根本不会计算,这对于避免副作用很重要 示例: False和True-->False True和True-->True 1和2-->2 False和None.explode()-->False(无例外) &有两种行为 如果两者都是int,则它计算两个数字的按位AND,返回

与Python中的
&
符号相比,使用单词
的逻辑或性能有什么不同吗?

是一个布尔运算符。它将两个参数都视为布尔值,如果是falsy,则返回第一个参数,否则返回第二个参数。请注意,如果第一个参数是falsy,那么第二个参数甚至根本不会计算,这对于避免副作用很重要

示例:

  • False和True-->False
  • True和True-->True
  • 1和2-->2
  • False和None.explode()-->False
    (无例外)

&
有两种行为

  • 如果两者都是
    int
    ,则它计算两个数字的按位AND,返回
    int
    。如果一个是
    int
    ,另一个是
    bool
    ,则
    bool
    值强制为int(0或1),并应用相同的逻辑
  • 否则,如果两者都是
    bool
    ,则对这两个参数进行求值,并返回
    bool
  • 否则会引发
    TypeError
    (例如
    float&float
    等)
示例:

  • 1&2-->0
  • 1&True-->1&1-->1
  • True&2-->1&2-->0
  • True&True-->True
  • False&None.explode()-->AttributeError:“非类型”对象没有属性“explode”

这似乎是Try
1、1和2以及
1&1&2
@FlashDrive的重复。您的链接问题相关但太长。它进入了太多的numpy和列表。这里的问题很简单,应该有一个简单的答案。所以我不认为链接的问题是一个很好的参考重复。但是如果有一个关于这个话题的更直接的问答,那么我会承认这个问题是重复的。我不清楚我该怎么处理这个问题。我是否应该删除它,因为它与引用的@FlashDrive问题有很多重叠?