【问题标题】:Python - How to save a list as a constant [duplicate]Python - 如何将列表另存为常量[重复]
【发布时间】:2018-11-07 20:36:57
【问题描述】:

我最近开始使用 Python 语言,但对列表有疑问。 我很惊讶在谷歌上没有找到我想要的东西,我想我无法用正确的词来解释,因为英语不是我的母语。 这是我的问题:

当我创建一个列表并想修改它但我想保留最后一个值时,我不知道该怎么做。 我认为我可以将我的列表保存在第二个列表中,但是当我修改另一个列表时,它不会保持不变。

list1=[1,2,3,4]
list2=list1
list1.append(5)
print(list2)

例如,在这里,我认为我的 list2 会保持不变,但不会,它与 list1 同步,当我打印(list2)时,会出现我在 list1 中添加的 5。

我真的不知道如何解决这个问题,如果有人可以帮助我,那就太好了,谢谢!

【问题讨论】:

  • 您可能会发现nedbatchelder.com/text/names1.html 很有帮助。上面有一个示例,几乎是您的确切代码。
  • @clearshot66 回答了这个问题,但我建议了解列表是如何存储在内存中的。

标签: python list constants


【解决方案1】:

试试这个:

# Set list 1
list1 = [1,2,3,4]
# Make a copy of list one as it sits, not assigning list1 to list 2, 
# Previously, anything done to list1 will happen with list2 since list2 is 
# assigned AS list 1
list2 = list1.copy()
# Add your 5
list1.append(5)
print(list1)
print(list2)

【讨论】:

  • 请解释你的答案。不要只是转储代码。
  • 哦好的我现在明白了,非常感谢,它救了我!
  • @user2357112 这可能是我见过的 最自我记录的代码...
  • @TasosPapastylianou:当我发表评论时,它没有那些代码 cmets。这些是后来编辑的。
  • 是的,在用户告诉我不要只转储代码之后,我添加了它。但我真的觉得没必要……
猜你喜欢
  • 2020-12-16
  • 1970-01-01
  • 2021-12-06
  • 1970-01-01
  • 1970-01-01
  • 2011-01-15
  • 2013-04-18
  • 2013-05-07
  • 2022-08-02
相关资源
最近更新 更多