附加到复制列表后会附加到原始列表上

问题描述 投票:0回答:1

我是Python的新手,所以有点困惑。在我的代码中,我有一个字符串列表:

a=['One','Two','Three','Four']

稍后,我想在函数调用中使用此列表,但是在此之前,需要对函数调用使用经过稍微修改的列表。那么,我该怎么办?我制作了一个副本,大概可以保留它。

b=a
b.append('Five')

现在我很乐意使用b,而不影响a,对吗?不,似乎我错了,a对我所做的一切都“感染了” b。

print(a)
['One', 'Two', 'Three', 'Four', 'Five']

这是我正在编写的某些分析代码中的主要错误的原因。花了我一个小时来追踪。这表明赋值b = a仅使b的指针指向a,而不创建副本(我在Fortran 95和Matlab中的习惯)。

一个如何将列表复制到另一个列表,同时保持原始状态不变?

list assign
1个回答
0
投票

结果是我需要使用copy()函数:https://www.programiz.com/python-programming/methods/list/copy

© www.soinside.com 2019 - 2024. All rights reserved.