【问题标题】:Confused by list behavior of python [duplicate]对python的列表行为感到困惑[重复]
【发布时间】:2015-04-19 05:23:13
【问题描述】:

我是 Python 新手。Python 列表不能循环修改。对此的输出是未更改的数组 str1。我试图使这个列表为零。这对我来说有点奇怪。 为什么我不能更改列表的元素?

 import re,string
 str1=["This is a review","This is not a review"]
 for each in str1:
    each=" "
 print str1

有什么线索吗?

【问题讨论】:

标签: python string


【解决方案1】:

这里您更改的是局部变量each,而不是列表中的元素。您可以使用enumerate 访问该列表以获取索引:

for idx, each in enumerate(str1):
    str1[idx] = " "

【讨论】:

  • 谢谢。我知道这一点。:)
【解决方案2】:

列表是不可变的。如果这就是你想要达到的目的,你不能破坏至少。

【讨论】:

  • 不,列表是可变的。
猜你喜欢
  • 2012-09-09
  • 2016-02-21
  • 2013-10-21
  • 2016-12-27
  • 2015-02-11
  • 1970-01-01
  • 2014-10-21
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多