【问题标题】:Return a list of Integer values that is not within a range of numbers in an existing list:返回不在现有列表中的数字范围内的整数值列表:
【发布时间】:2011-09-04 01:16:12
【问题描述】:

我有一个值列表:

[0,7,4,5,3,1,4,5,5,1,7,0,7,7,0]

并希望返回任何不在[1..8] 范围内的值

(即我想(从上面的示例中)返回表单中的元素 2、6 和 8

[2,6,8]

)

我似乎很难将它组合成一个函数。我知道notElem 在这里可以很好地工作,但不确定如何将列表 [1..8] 应用于上面显示的值列表以获取刚刚显示的元素。

【问题讨论】:

    标签: list haskell return element range


    【解决方案1】:

    使用filter 保留满足条件的元素。

    Prelude> filter (`notElem` theBigListOfValues) [1..8]
    [2,6,8]
    

    或者只是使用(\\) 运算符获取complement

    Prelude> import Data.List
    Prelude Data.List> [1..8] \\ theBigListOfValues
    [2,6,8]
    

    【讨论】:

      猜你喜欢
      • 2011-11-05
      • 2013-04-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-02-03
      • 2019-10-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多