2013-06-28 18 views
16

Tôi đang dịch một số mã python của tôi để scala, và tôi đã tự hỏi nếu có một tương đương vớiCó scala tương đương với python của danh sách hiểu

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

Về cơ bản tôi đang cố gắng để loại bỏ các yếu tố nhất định của python từ danh sách nếu nó phù hợp.

+0

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

Trả lời

24

Các tương tự gần nhất với một sự hiểu biết danh sách Python sẽ

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

Nhưng vì bạn những gì bạn đang làm là lọc, bạn cũng có thể chỉ cần sử dụng các phương pháp filter

list.filter(_ != somevalue) 

hoặc

list.filterNot(_ == somevalue) 
+0

Tuyệt vời, cảm ơn, tôi chỉ là những gì tôi cần! –

+2

@ Shelby.S bằng cách này, trước đây hai [sẽ được desugared vào mã giống hệt nhau] (http://stackoverflow.com/a/1059501/298389) –