2013-06-28 18 views
16

私はスカラ座に私のPythonコードの一部を翻訳していますとScalaの同等があり、PythonのPythonのリスト内包

[x for x in list if x!=somevalue] 

基本的に私は削除しようとしている特定の要素に相当あります場合、私は思っていました一致する場合はリストから削除します。

+0

http://www.scala-lang.org/node/111 –

答えて

24

Pythonのリスト内包に最も近いアナログは

for (x <- list if x != somevalue) yield x 

だろう。しかし、あなたはフィルタリングされてやっていることだから、あなたにもちょうどfilter方法

list.filter(_ != somevalue) 

に使用する場合がありますまたは

list.filterNot(_ == somevalue) 
+0

私が必要としていただけ! –

+2

@ Shelby.Sところで、前者の2つは[同じコードにdesugared](http://stackoverflow.com/a/1059501/298389) –

関連する問題