Python: Elegant and efficient ways to mask a list

后端 未结 5 1355
情深已故
情深已故 2020-12-05 14:26

Example:

from __future__ import division
import numpy as np

n = 8
\"\"\"masking lists\"\"\"
lst = range(n)
print lst

# the mask (filter)         


        
5条回答
  •  悲哀的现实
    2020-12-05 14:40

    You could also just use list and zip

    1. define a funcion
    def masklist(mylist,mymask):
        return [a for a,b in zip(mylist,mymask) if b]
    
    1. use it!
    n = 8
    lst = range(n)
    msk = [(el>3) and (el<=6) for el in lst]
    lst_msk = masklist(lst,msk)
    print(lst_msk)
    

提交回复
热议问题