gpt4 book ai didi

Haskell - 元组列表中的列表理解 (a,[a])

转载 作者:行者123 更新时间:2023-12-04 17:37:20 24 4
gpt4 key购买 nike

那么,让我们进入正题:

f :: Eq a => a -> [(a,[a])] -> [(a,[a])]
f x list = [(a,[m]) | (a,[m]) <- list, x == a]

所以:
   f 1 [(1,[1])] = [(1,[1])]


  f 1 [(1,[1,1])] = []

这是为什么??
谢谢!

(我是新手,所以如果问题太愚蠢,我很抱歉,但我真的找不到解释)

最佳答案

那是因为 [1,1]与模式不匹配 [m] .后者意味着一个项目的列表(除非在类型名称应该使用的地方使用)。 Haskell 已经知道该对的第二个元素是一个列表,(通过查看 list 参数的类型)并且不需要明确告知。

关于Haskell - 元组列表中的列表理解 (a,[a]),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14062026/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com