python - 什么时候 list[n] == list
问题描述
我正在阅读一些代码,遇到一行 read if len(list)==1 and list[0] == list:
,其中 list 是所有数字的列表。我在阅读代码时假设一个元素列表等于那个元素,但是当我尝试时[0] == 0
,它返回了False
. 那么“if”语句是什么意思呢?
解决方案
列表可以包含对自身的引用:
>>> lst = []
>>> lst.append(lst)
>>> print(lst)
[[...]]
>>> lst[0] == lst
True
当然,对于其他容器类型也是如此,但并不那么容易,例如 aset
不能包含另一个set
(至少不是直接),tuple
或者frozenset
不允许在创建元素后添加元素(同样,至少不是直接)。
推荐阅读
- javascript - 为什么会为不相关的元素触发此点击事件?
- flutter - 我有一个返回“[]”的查询。我希望它在小部件上显示为没有任何价值,我该怎么做?
- php - 如何允许其他网络连接到服务器 nodejs socket io
- python - 使用 xml 和 python 嵌套
- python - CPython 中从 C 代码调用 Python 函数的机制是什么?
- python - 无法让python exe运行
- python - 如何将 PyTorch 张量转换为 Numpy ndarray
- node.js - Express - 嵌套目录中每个模板文件的路由和渲染引擎
- spring-integration - SimpleMessageListenerContainer - AMQP 接收消息上的 ClassNotFoundException 警告
- reactjs - 我可以在科尔多瓦应用程序中使用苹果支付按钮吗?