0

明らかな何かが欠けているに違いありませんが、なぜこの単純なループがリスト項目の変更に失敗するのでしょうか?

for artist in artists:
    artist = artist.replace(': ', '')

artists = [': Terence Trent D Arby', ": Guns N' Roses", ': Sinead O Connor' ...]
4

3 に答える 3

0

Rohitが言ったように、アーティストはリスト項目への参照ではないので、提案されているようにリスト内包表記を使用するか、IMOの最もクリーンな方法であるか、このように「古い学校」でそれを理解させるかRohit が提供したリスト内包表記の背後で動作します。

for index,artist in enumerate(artists):
    artists[index] = artist.replace(': ', '')

しかし、私はこのようにします:

artists = [artist[2:] for artist in artists]

もちろん、リストするすべての項目が常に「:」で始まる場合のみ。スライスは、置き換えるよりも高速である可能性があります。

于 2013-07-27T21:22:15.273 に答える