2

我有一个清单:

s = ["sam1", "s'am2", "29"]

我想'从整个列表中替换。
我需要输出为

s = ["sam1", "sam2", "30"]

目前我正在遍历列表。
有没有更好的方法来实现它?

4

3 回答 3

7

你可以试试这个:

  s = [i.replace("'", "") for i in s]

但正如所指出的,这仍在遍历列表。我想不出在某些时候不包含列表的某种迭代(显式或隐式)的任何解决方案。

如果您想要处理大量数据并且担心速度,您可以通过计时来评估各种方法并选择最快的方法,否则我会坚持使用您认为最易读的解决方案。

于 2012-04-26T06:34:32.783 回答
2

您还可以使用mapand lambda

map(lambda a: a.replace("\'",""),s)

于 2012-04-26T06:33:55.717 回答
1

山姆,

这是我能想到的最接近的方法,无需迭代。最终,它以某种方式在非常原子的级别上进行迭代。

s = ["sam1", "s'am2", "29"]
x = ','.join(s).replace("'","").split(",")
于 2012-04-26T06:44:43.880 回答