9

文字列のリストがあります。順序を維持したまま、「#」で始まる要素を除外した新しいリストを取得したいと考えています。これに対する最もpythonicな方法は何ですか? (できればループを使用しないでください?)

4

2 に答える 2

27
[x for x in my_list if not x.startswith('#')]

それはそれを行う最もpythonicな方法です。これを行う方法は、Python または C でループを使用することになります。

于 2012-08-03T07:56:40.217 に答える
10

ループを使用していませんか?filter組み込みがあります:

filter(lambda s: not s.startswith('#'), somestrings)

Python 3 では、リストではなく iterable を返すため、 でラップする必要がある場合があることに注意してくださいlist()

于 2012-08-03T08:01:47.727 に答える