python - 在 python 中,为什么列表与列表不同[ :]?

标签 python list

<分区>

我有一个列表,ls = [0 1 2 3 4] 我正在运行以下命令:

print(ls is ls[:])

我得到的输出为 False。为什么他们不是同一个列表?当我打印两个版本时,我打印的是相同的列表。

最佳答案

ls 引用内存中的一个对象; ls[:] 使用第一个中包含的相同引用创建一个 list 对象。

>>> ls = [0, 1, 2, 3, 4]
>>> new_ls = ls[:]
>>> id(ls) == id(new_ls)
False
>>> id(ls[0]) == id(new_ls[0])
True

关于python - 在 python 中,为什么列表与列表不同[ :]?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46791642/

相关文章:

Python 新手 : using eval() to assign a value to a self. 变量

python - 交换列表中的最大值和最小值

python - 如何唯一地组合2个列表

python - 用 python 中的另一个列表迭代列表列表

python - for 列表中的循环 - 替换为列表中的位置

python - 如何从网页python获取所有可复制文本

Python traceback.print_exc() 返回 'None'

python - 扭曲服务器有没有 "remote console"?

python - 如何使用rasterio更改光栅的crs?

python - 根据每个列表元素中的字符值遍历列表(python)