gpt4 book ai didi

python - 省略号 [...] 在列表中是什么意思?

转载 作者:IT老高 更新时间:2023-10-28 12:19:45 29 4
gpt4 key购买 nike

我在玩python。我在 IDLE 中使用了以下代码:

p  = [1, 2]
p[1:1] = [p]
print p

输出是:

[1, [...], 2]

这是什么[…]?有趣的是,我现在可以将其用作列表列表,直到无穷大,即

p[1][1][1]....

上面的内容我想写多少就写多少,它仍然可以工作。

编辑:

  • 它在内存中是如何表示的?
  • 它有什么用?一些有用的例子会很有帮助。
  • 任何指向官方文档的链接都会非常有用。

最佳答案

这是您的代码创建的

enter image description here

这是一个列表,其中第一个和最后一个元素指向两个数字(1 和 2),中间元素指向列表本身。

在 Common Lisp 中,当启用打印循环结构时,这样的对象将被打印为

#1=#(1 #1# 2)

表示有一个对象(用 #1= 标记为 1)是一个包含三个元素的向量,第二个是对象本身(用 #1#< 反向引用)。

在 Python 中,您只需使用 [...] 获得结构是循环的信息。

在这种特定情况下,描述不是模棱两可的(它向后指向一个列表,但只有一个列表,所以它必须是那个)。然而,在其他情况下可能会模棱两可......例如在

[1, [2, [...], 3]]

后向引用可以指向外部或内部列表。这两种以相同方式打印的不同结构可以使用

x = [1, [2, 3]]
x[1][1:1] = [x[1]]

y = [1, [2, 3]]
y[1][1:1] = [y]

print(x)
print(y)

他们会在内存中

enter image description here

关于python - 省略号 [...] 在列表中是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17160162/

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