filter与compress

values = ['1', '2', '-3', '-', '4', 'N/A', '5']


def isNum(s):
    try:
        int(s)
        return True
    except:
        return False


print(list(filter(lambda i: isNum(i), values)))
# 简写
print(list(filter(isNum, values)))  # ['1', '2', '-3', '4', '5']

from itertools import compress

# 压缩?
print(list(compress(values, [isNum(i) for i in values])))  # ['1', '2', '-3', '4', '5']
posted @ 2020-07-29 11:27  fly_bk  阅读(142)  评论(0)    收藏  举报