gpt4 book ai didi

python - 如何在不创建新列表对象的情况下获取 python 列表中的一系列行?

转载 作者:太空宇宙 更新时间:2023-11-04 08:10:30 25 4
gpt4 key购买 nike

我有一个大型二维列表,我将其视为矩阵。现在我通过做

得到了这些列表的一个子集
subset = mainList[startIndex:endIndex]

但我相信这会创建一个新列表,并将所有行复制到新列表中。有什么办法可以避免重复数据并只指向 mainList 中的行?感谢您的回答!

最佳答案

是的,您创建了一个新的外部列表,但复制嵌套列表。您并没有真正复制数据,只是复制了对嵌套列表的引用

这会创建一个列表对象,并且包含的​​引用很便宜。不用担心这些。

快速说明性演示:

>>> mainList = [['foo', 'bar', 'baz'], ['spam', 'ham', 'eggs'], ['idle', 'cleese', 'jones']]
>>> sliced = mainList[:2]
>>> sliced
[['foo', 'bar', 'baz'], ['spam', 'ham', 'eggs']]
>>> sliced[0][1] = 'parrot'
>>> mainList
[['foo', 'parrot', 'baz'], ['spam', 'ham', 'eggs'], ['idle', 'cleese', 'jones']]

改变 sliced 中的嵌套列表改变了与 mainList 共享的列表对象。

关于python - 如何在不创建新列表对象的情况下获取 python 列表中的一系列行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23449915/

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