を使用して、指定された文字列からスペースを削除する必要がある私は、次のコードは、という印象の下にあったフィルタ
"StackOverflow"
しかし、私はPythonを使用した場合、それは実現しませんでした(2.7)。それがそうである理由誰も教えてもらえますか?
を使用して、指定された文字列からスペースを削除する必要がある私は、次のコードは、という印象の下にあったフィルタ
"StackOverflow"
しかし、私はPythonを使用した場合、それは実現しませんでした(2.7)。それがそうである理由誰も教えてもらえますか?
助けfilter
のための州
リターン機能(アイテム)のための一連のそれらの項目はtrueです。 機能がNoneの場合、該当する項目を返します。
スペースのブール値はTrue
です。したがって、削除されません。
あなたはしかし、スペースがとても明示的にスペースをチェックする(ためNone
検索)、False
ではない、スペースをフィルタリングするために表示されます。さらに
filter(lambda x: x!=' ',"Stack Overflow")
、あなただけ扱っている場合文字列で、replace
を忘れないでください:
"Stack Overflow".replace(' ', '')
removed.'ある、つまり、想定されます指摘 –
右間違っているのiterableの全ての要素は、さらに、フィルタの必要性は今のpython 3にあまり面白い参加 – doctorlove
あなたは「'置き換える関数を定義する必要があります。
filter(lambda x: x != ' ', 'Stack Overflow')
filterのマニュアルを参照してください。何の機能が指定されていない場合
それだけの要素が「」だけでなく、他の文字のためのためのケースであるtruthyであるかどうかを比較します。より良い理解のためにNone
がfalsy値であるため、リストから削除される場合、この例を参照してください。ジェネレータオブジェクトを返すfilter`パイソン3 `に
filter(None, ['S', 't', 'a', 'c', 'k', None, 'O', 'v', 'e', 'r', 'f', 'l', 'o', 'w'])
。だから、 '' '.join(フィルタ...' –
参照[ドキュメント](https://docs.python.org/2/library/functions.html#filter) '関数がNoneの場合、IDを使用する必要がありますあなたが戻っAA発電機を得るのCoSしかし、これが2.7タグ付けされていますが、価値がある - 。。機能は –