【发布时间】:2014-06-28 08:34:10
【问题描述】:
祝大家有美好的一天。
我一直在寻找一种方法来替换数组中的项目。
基本上我有一个嵌套列表的数组,看起来像这样:
array = [ ('a', 'a'), 'c', ('c', 'a'), 'g', 'g', ('h', 'a'), 'a']
现在我正在寻找一种方法将所有出现的“a”替换为“z”。
我想使用以下代码行来实现这一点:
new_array = [w.replace('a', 'z') for w in array]
new_array = [ ('z', 'z'), 'c', ('c', 'z'), 'g', 'g', ('h', 'z'), 'a']
然而,不幸的是,我收到以下错误:
AttributeError: 'tuple' 对象没有属性 'replace'。
我知道主要问题是由使用元组 (a, x) 引起的,但它们是所需数组的关键部分。
我已经花费了数小时寻找解决方法,如果有任何正确方向的提示,我将不胜感激。
感谢您的帮助!
【问题讨论】:
-
Python 没有数组作为核心数据结构——这些是列表。
-
元组是不可变的,要么替换整个元组,要么使用列表。
-
为什么列表中有元组和单个值?
标签: python arrays python-3.x tuples