gpt4 book ai didi

haskell - 在 Haskell 中打印元组内的值

转载 作者:行者123 更新时间:2023-12-05 09:24:53 26 4
gpt4 key购买 nike

我有一个元组列表。例如:[("A",100,1),("B",101,2)]。我需要以简单的方式显示它。例如:“你的名字是:A”,“你的id是:100”

如果有人能找到解决方案,那将是一个很大的帮助。提前致谢。

最佳答案

执行此操作的最简单方法是创建一个适用于列表中的元素之一的函数。所以你需要这样的东西:

showDetails :: (String, Int, Int) -> String
showDetails (name, uid, _) = "Your name is:" ++ name ++ " Your ID is: " ++ show uid

然后你会把这个函数应用到列表中的每个元素,这意味着你想使用映射函数:

map :: (a -> b) -> [a] -> [b]

因此,如果您的列表名为 xs,您可能需要这样的内容:

map showDetails xs

这显然为您提供了 [String] 类型的结果,因此您可能对 unlines 函数感兴趣:

unlines :: [String] -> String

这只是获取一个字符串列表,并创建一个字符串,其中每个元素由一个新行分隔。

然后,将所有这些放在一起,您将:

main :: IO ()
main = putStrLn . unlines . map showDetails $ [("A",100,1),("B",101,2)]

关于haskell - 在 Haskell 中打印元组内的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8094993/

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