【问题标题】:Python: Make Copy of List [duplicate]Python:制作列表的副本[重复]
【发布时间】:2017-07-03 02:42:40
【问题描述】:

如何制作列表的副本,以便在不影响原件的情况下编辑副本。例如:

x = [1., 2., 3., 4.]
y = x
y[0] = 9.

输出是:

x: [9.0, 2.0, 3.0, 4.0] 
y: [9.0, 2.0, 3.0, 4.0] 

当我希望 x 成为:

x: [1.0, 2.0, 3.0, 4.0]

那么如何在保持原始变量不变的情况下复制变量呢?

提前致谢,

埃里克

【问题讨论】:

  • python-3.x 中的y=x.copy() 怎么样...
  • new_list = copy.copy(old_list)from copy import copy

标签: python list variables copy assign


【解决方案1】:

在声明 y 的时候,只需用 python 的 list 函数包裹 x 就可以了!

x = [1, 2, 3, 4]
y = list(x)
y[0] = 9

print x
print y

#This prints the following
#[1, 2, 3, 4]
#[9, 2, 3, 4]

【讨论】:

    【解决方案2】:

    在这种情况下,您可以使用:

    x = [1., 2., 3., 4.]
    y = x[:]
    y[0] = 9.
    

    x 和 y 的输出:

    [1.0, 2.0, 3.0, 4.0]
    [9.0, 2.0, 3.0, 4.0]
    

    但请阅读this

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-23
      • 2018-06-21
      • 2014-07-22
      • 2019-10-10
      • 2012-02-13
      • 2021-11-18
      • 2013-04-22
      • 2013-02-10
      相关资源
      最近更新 更多