Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 切片分配修改的原始列表_Python - Fatal编程技术网

Python 切片分配修改的原始列表

Python 切片分配修改的原始列表,python,Python,有以下代码: a = [1, 2, 3, 4, 5] a[:] = [] # and now a is also empty 语句a[:]在我阅读时创建了一个列表a的副本,因此,如果将空列表[]分配给副本,那么为什么还要修改原始对象?x=a[:]会生成一个新列表,其中包含与a相同的值 a[:]=x使现有列表a包含与x相同的值 当表达式切换等号的边时,其行为会发生变化 语句a[:]在我阅读时创建列表a的副本 除非你不是在读书,你是在写作。切片分配的工作原理不同,它用序列替换切片。切片分配!=切片

有以下代码:

a = [1, 2, 3, 4, 5]
a[:] = [] # and now a is also empty

语句
a[:]
在我阅读时创建了一个列表
a
的副本,因此,如果将空列表
[]
分配给副本,那么为什么还要修改原始对象?

x=a[:]
会生成一个新列表,其中包含与
a
相同的值

a[:]=x
使现有列表
a
包含与
x
相同的值

当表达式切换等号的边时,其行为会发生变化

语句
a[:]
在我阅读时创建列表
a
的副本


除非你不是在读书,你是在写作。切片分配的工作原理不同,它用序列替换切片。

切片分配!=切片。这是一个功能,而不是一个bug.:-)