我以为我定义了一个元组。幸运的是,它工作了很长时间。 在一个特定点上,它打破了 --& GT;弄清楚它实际上不是一个元组。 最后,我预计会有一个内置1个string的元组  ("expected tuple")

令人困惑,请解释

if any(key in [tuple("expect tuple"), tuple(("expect tuple"),),("expect tuple")] for key in [(("expect tuple"),)]):
    print("same")
分析解答

具有单个元素的元组必须像这样写:

("expected tuple",)

如果没有,,它将被解释为括号括起来的值,但不是实际的元组。对于具有多个元素的元组,我们没有此问题,在这些情况下,我们不需要尾随comma。