Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to filter None's out of List[Option]?

Tags:

option

scala

People also ask

How do I remove all Nones from a list?

The easiest way to remove none from list in Python is by using the list filter() method. The list filter() method takes two parameters as function and iterator. To remove none values from the list we provide none as the function to filter() method and the list which contains none values.

How do I remove all none values from a list in Python?

The Python filter() function is the most concise and readable way to perform this particular task. It checks for any None value in list and removes them and form a filtered list without the None values.


If you want to get rid of the options at the same time, you can use flatten:

scala> someList.flatten
res0: List[String] = List(Hello, Goodbye)

someList.filter(_.isDefined) if you want to keep the result type as List[Option[A]]


The cats library also has flattenOption, which turns any F[Option[A]] into an F[A] (where F[_] is a FunctorFilter)

import cats.implicits._

List(Some(1), Some(2), None).flattenOption == List(1, 2)