python - 列表和列表副本(有什么区别?)

标签 python

<分区>

这是我的第一个问题 - 抱歉,如果有点微不足道

我想知道这两种方法有什么区别(有什么区别吗?)

方法一

animals = ['cat', 'dog', 'goldfish']  
pets = animals[:] 

animals.sort()
pets.append('donkey')

print(animals)
print(pets)

方法二

animals = ['cat', 'dog', 'goldfish']
pets = list(animals)

animals.sort()
pets.append('donkey')

print(animals)
print(pets)

在方法中创建列表的副本并将其分配给新变量(宠物)

在方法 B 中创建新列表并将其分配给宠物?

(不确定我是否正确)我们是否在方法 A 中创建列表?

最佳答案

两者都将复制存储在 animals 变量中的列表并将其分配给 pets 变量。副本是按值而不是按引用,因此更改分配给 pets 的列表中的项目不会更改分配给 animals 的列表,反之亦然

关于python - 列表和列表副本(有什么区别?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49783897/

相关文章:

python - Chrome 中的 Django-Rest-Framework 可浏览 API 中未呈现 Unicode

python - 如何将两个文本文件合并为一个?

python - 绘制错误栏时出现奇怪的错误

python - 使用python查找字符串中索引之前出现的两个单词

python - matplotlib 中大小相等的箭头

python - 异步运行或 run_until_complete

python - 连续字符后出现意外字符

python - 有什么方法可以将 pythonappend 与 SWIG 的新内置功能一起使用?

python - 将 facebook 登录与 python 集成到 google 应用引擎中

python - Django 分页 |获取页面索引中分页项目的当前索引(不是页面索引范围本身)