要复制列表,可创建一个包含整个列表的切片,方法是同时省略起始索引和终止索引([ : ])。这让Python创建一个始于第一个元素,终止于最后一个元素的切片,即复制整个列表。
示例代码:
friend_foods = my_foods[:]
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("My favourite foods are:")
print(my_foods)
print("My friend's favourite foods are:")
print(friend_foods)
print("\n\n")
my_foods = ['pizza', 'falafel', 'carrot cake']
friend_foods = my_foods
my_foods.append('cannoli')
friend_foods.append('ice cream')
print("My favourite foods are:")
print(my_foods)
print("My friend's favourite foods are:")
print(friend_foods)
运行结果:
下半部分是直接将my_foods赋给friend_foods,而不是将my_foods的副本存储到friend_foods。这种语法实际上是让Python将新变量关联到旧变量中的列表,因此这两个变量都指向同一个列表。