我最近在尝试使用.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))让我感到困惑。想知道是否是某种形式的递归导致了它?