复制可以看做是一种特殊的类型转化,它将参数的一个完全的副本返回给转换函数。即参数的类型和转换函数的类型是相同的。例如,如下代码中产生了列表的一个副本,并通过 is 和 == 运算符来比较两个列表。若两个列表不是相同的对象,is 会返回False;虽然两个列表是不同的对象,但它们具有相同的类型并且用欧相同的结果(两个列表中的每一个位置上的每一对元素都是相同的),则 == 返回True。
1 >>> ls1 = [2,4,8] 2 >>> ls2 = list(ls1) 3 >>> ls1 4 [2, 4, 8] 5 >>> ls2 6 [2, 4, 8] 7 >>> ls1 == ls2 8 True 9 >>> ls1 is ls2 10 False
上述示例中,list函数对其参数列表进行了浅复制,这些项并没有在添加到新列表之前进行自身的复制。