remove None value from a list without removing the 0 value
filter, list, list-comprehension, nonetype, python
Solution
>>> L = [0, 23, 234, 89, None, 0, 35, 9]
>>> [x for x in L if x is not None]
[0, 23, 234, 89, 0, 35, 9]
Just for fun, here's how you can adapt `filter` to do this without using a `lambda`, (I wouldn't recommend this code - it's just for scientific purposes)
>>> from operator import is_not
>>> from functools import partial
>>> L = [0, 23, 234, 89, None, 0, 35, 9]
>>> list(filter(partial(is_not, None), L))
[0, 23, 234, 89, 0, 35, 9]
Problem
This was my source I started with. My List ``` L = [0, 23, 234, 89, None, 0, 35, 9] ``` When I run this : ``` L = filter(None, L) ``` I get this results ``` [23, 234, 89, 35, 9] ``` But this is not what I need, what I really need is : ``` [0, 23, 234, 89, 0, 35, 9] ``` Because I'm calculating percentile of the data and the 0 make a lot of difference. How to remove the None value from a list without removing 0 value?