gpt4 book ai didi

Python:为什么不支持列表和元组之间的比较?

转载 作者:IT老高 更新时间:2023-10-28 20:39:40 27 4
gpt4 key购买 nike

当比较一个元组和一个像...这样的列表时

>>> [1,2,3] == (1,2,3)
False
>>> [1,2,3].__eq__((1,2,3))
NotImplemented
>>> (1,2,3).__eq__([1,2,3])
NotImplemented

...Python 不会像使用 (1,2,3) == (1,2,3) 那样对它们进行深度比较。

那么这是什么原因呢?是因为可变列表可以随时更改(线程安全问题)还是什么?

(我知道这是在CPython中实现的,所以请不要回答在哪里,而是为什么实现它。)

最佳答案

你总是可以“施放”它

>>> tuple([1, 2]) == (1, 2)
True

请记住,Python 与 Javascript 不同,is strongly typed ,而我们中的一些人(大多数?)更喜欢这种方式。

关于Python:为什么不支持列表和元组之间的比较?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2345092/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com