Python(None)是None,但是()不是None

Python(None)是None,但是()不是None,python,Python,答案应该很简单,应该已经是答案了,但我找不到 ()为None#False (无)不正确 (没有,没有)没有错 所有这些检查的结果都是意料之中的,但看起来很奇怪。因此,关于问题: 为什么是(None)是None-是因为拆包吗 那么为什么()不是None?即,如果(无)已经是无为什么()不是 因为在表达式和之间加括号并不会改变其值 为什么应该是None()实际上是一个空元组 因为在表达式和之间加括号并不会改变其值 为什么应该是None()实际上是一个空元组 因为()是一个空元组,而不是无元组 (N

答案应该很简单,应该已经是答案了,但我找不到

()为None#False
(无)不正确
(没有,没有)没有错
所有这些检查的结果都是意料之中的,但看起来很奇怪。因此,关于问题:

  • 为什么是
    (None)是None
    -是因为拆包吗
  • 那么为什么
    ()不是None
    ?即,如果
    (无)
    已经是
    为什么
    ()
    不是
  • 因为在表达式和之间加括号并不会改变其值

  • 为什么应该是
    None
    ()
    实际上是一个空元组

  • 因为在表达式和之间加括号并不会改变其值

  • 为什么应该是
    None
    ()
    实际上是一个空元组

  • 因为
    ()
    是一个空元组,而不是无元组

    (None, None) is not None
    
    因为
    (None,None)
    是一个包含两个
    None
    元素的元组,这显然与一个
    None
    元素不同

    (None) is None
    
    因为
    (None)
    在元组中是而不是。这类括号用于表示数学分组/计算顺序,在这种情况下可以省略,导致
    None为None

    (None,) is not None
    
    这可能就是您试图创建的,一个包含一个
    None
    元素的元组

    (None) is None
    
    因为
    ()
    是一个空元组,而不是无元组

    (None, None) is not None
    
    因为
    (None,None)
    是一个包含两个
    None
    元素的元组,这显然与一个
    None
    元素不同

    (None) is None
    
    因为
    (None)
    在元组中是而不是。这类括号用于表示数学分组/计算顺序,在这种情况下可以省略,导致
    None为None

    (None,) is not None
    
    这可能就是您试图创建的,一个包含一个
    None
    元素的元组。

    (None)
    不是元组。(提示:尝试执行
    键入((无))
    (无)
    不是元组。(提示:尝试执行
    键入((无))
    (None) is None