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

mapまた、使用することができます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 に答える