小编abh*_*asu的帖子

Python 自引用列表在排序时产生奇怪的输出

我最近在尝试使用.sort()和对自引用列表进行排序时遇到了一个奇怪的差异sorted()。我希望有人能对此有所了解。有问题的代码如下:

lst = [1, 2, 3]

lst[0] = lst
lst[1] = lst
lst[2] = lst

print(lst)

print(sorted(lst))

lst.sort()

print(lst)
Run Code Online (Sandbox Code Playgroud)

上面的代码产生以下输出:

[[...], [...], [...]]
[[[...], [...], [...]], [[...], [...], [...]], [[...], [...], [...]]]
[[...], [...], [...]]
Run Code Online (Sandbox Code Playgroud)

它的输出print(sorted(lst))让我感到困惑。想知道是否是某种形式的递归导致了它?

python list

50
推荐指数
2
解决办法
2747
查看次数

标签 统计

list ×1

python ×1